Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > สอบถาม การเปลี่ยนจาก input แบบ text เป็นแบบ select ในการนำค่าที่ได้ไปคำนวณแบบ auto (jquery)



 

สอบถาม การเปลี่ยนจาก input แบบ text เป็นแบบ select ในการนำค่าที่ได้ไปคำนวณแบบ auto (jquery)

 



Topic : 105706



โพสกระทู้ ( 1,096 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์




cal
Code (JavaScript)
จากรูปต้องการเปลี่ยนจาก text ช่องแรก ให้เป็น select
ต้องไปแก้ โค๊ด ส่วนไหนใน script พอดีว่าไม่ฉลาดเรื่องนี้เลย อิอิ
เพราะโค๊ดผมทำงานได้หมดแล้วเพียงแต่อยากเปลี่ยน text ช่องแรกให้เป็น select เพราะต้องกำหนดค่าให้ อยู่ 1-5 แค่นั้น
code js
<script>
$(document).ready(function(){
    //trigger when type
    $('input[id^="value"], input[id^="count"]').keyup(function(){
        //find value1
        var value1 = parseFloat($(this).val());
        //check if is not a number, skip
        if(isNaN(value1)) return false;
        //find type of trigged
        var type = $(this).attr("id").split("_");
        //find number
        var no = parseInt(type[1]);
        //delete number
        type = type[0];
        //find Multiplier
        var value2 = parseFloat($('#'+(type=="value"?"count":"value")+"_"+no).val());
        //check if is not a number, skip
        if(isNaN(value2)) return false;
        //chenge value
        $("#result_"+no).val(value1*value2);
        //set start value
        var all_result = 0;
        //travel all result
        $('input[id^="result"]').each(function(){
            var curr_val = parseFloat($(this).val());
            if(!isNaN(curr_val)) all_result += curr_val;
        });
        //update all value
        $("#all_result").html(all_result);        
                
    });
});     
</script>


โค๊ด php
Code (PHP)
<td> <center>
<div class="control-group"><div class="controls">
<input style="width: 20px;" type ="text" name="value[]" id="value_<?php echo $i;?>" />//เปลี่ยนเป็น select ไม่ทำงาน
</div></div></center></td>
        <td><center><div class="control-group"><div class="controls"><input style="width: 50px;" type ="text" name="count[]" value="<?php echo $rsav["h_value"];?>" id="count_<?php echo $i;?>" /></div></div></center></td>
        <td><center><div class="control-group"><div class="controls"><input style="width: 70px;" type ="text" name="result[]" readonly="readonly" id="result_<?php echo $i;?>" /></div></div></center></td>




Tag : PHP, Ms SQL Server 2008, JavaScript, jQuery







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-02-11 10:31:19 By : compiak View : 1411 Reply : 14
 

 

No. 1



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


Code (PHP)
<script>
$(document).ready(function(){
    //trigger when type
    $('input[id^="count"]').keyup(function(){
        //find value1
        var value1 = parseFloat($(this).val());
        //check if is not a number, skip
        if(isNaN(value1)) return false;
        //find type of trigged
        var type = $(this).attr("id").split("_");
        //find number
        var no = parseInt(type[1]);
        //delete number
        type = type[0];
        //find Multiplier
        var value2 = parseFloat($('#'+(type=="value"?"count":"value")+"_"+no).val());
        //check if is not a number, skip
        if(isNaN(value2)) return false;
        //chenge value
        $("#result_"+no).val(value1*value2);
        //set start value
        var all_result = 0;
        //travel all result
        $('input[id^="result"]').each(function(){
            var curr_val = parseFloat($(this).val());
            if(!isNaN(curr_val)) all_result += curr_val;
        });
        //update all value
        $("#all_result").html(all_result);        
                
    });
    $("select.value").change(function(){
         var value1 = parseFloat($("option:selected",this).val());        
        if(isNaN(value1)) return false;
        var value2 = parseFloat($(this).parents("tr").find("td:nth-child(2) input:text").val());
         if(isNaN(value2)) return false;

        $(this).parents("tr").find("td:nth-child(3) input:text").val(value1*value2);

        var all_result = 0;
        //travel all result
        $('input[id^="result"]').each(function(){
            var curr_val = parseFloat($(this).val());
            if(!isNaN(curr_val)) all_result += curr_val;
        });
        //update all value
        $("#all_result").html(all_result);   
    }); 
});     
</script>



Code (PHP)
<td> <center>
<div class="control-group"><div class="controls">
<input style="width: 20px;" type ="text" class="value" name="value[]" id="value_<?php echo $i;?>" />//เปลี่ยนเป็น select ไม่ทำงาน
</div></div></center></td>
        <td><center><div class="control-group"><div class="controls"><input style="width: 50px;" type ="text" name="count[]" value="<?php echo $rsav["h_value"];?>" id="count_<?php echo $i;?>" /></div></div></center></td>
        <td><center><div class="control-group"><div class="controls"><input style="width: 70px;" type ="text" name="result[]" readonly="readonly" id="result_<?php echo $i;?>" /></div></div></center></td>



ทดลองดูน่ะครับ








ประวัติการแก้ไข
2014-02-11 13:31:03
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 13:29:41 By : sakuraei
 


 

No. 2



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


Code (PHP)
<td> <center>
<div class="control-group"><div class="controls">
<select style="width: 20px;" class="value" name="value[]"  >
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
</select>
</div></div></center></td>
        <td><center><div class="control-group"><div class="controls"><input style="width: 50px;" type ="text" name="count[]" value="<?php echo $rsav["h_value"];?>" id="count_<?php echo $i;?>" /></div></div></center></td>
        <td><center><div class="control-group"><div class="controls"><input style="width: 70px;" type ="text" name="result[]" readonly="readonly" id="result_<?php echo $i;?>" /></div></div></center></td>



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 13:35:42 By : sakuraei
 

 

No. 3



โพสกระทู้ ( 1,096 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


ขอบใจท่านมาก ซึ้งใจจัง ว่าแต่มีเฟสมั้ยครับ

จะได้เอาไว้ติดต่อกัน pm ก็ได้ อิอิ

อยากเขียนเป็นจัง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 13:50:21 By : compiak
 


 

No. 4



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


สรุปว่าสำเร็จมั๊ย..
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 13:50:40 By : sakuraei
 


 

No. 5



โพสกระทู้ ( 1,096 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


ยังไม่ทำงาน พลาดขั้นตอนไหนหว่า

ไล่ดูหมดแล้ว หรือต้อง include jquery เวอร์ชั่นไหนเข้าไปครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 13:59:32 By : compiak
 


 

No. 6



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


เวอร์ชั่นไหนก็ได้มั้งครับ
ถ้ายังไม่ได้เอาโค้ดหน้านี้ทั้งหมดมาวางครับ

คลิ๊กขวาแล้ว view source เอาโค้ดตรงนี้มาลงครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 14:01:49 By : sakuraei
 


 

No. 7



โพสกระทู้ ( 1,096 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


ตาลายหน่อยนะครับ อิอิ คิดมาสองอาทิตละ
Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
	  body {
		padding-bottom: 40px;
	  }
	  .sidebar-nav {
		padding: 9px 0;
	  }
	</style>
 
<link href="../../fonts/thsarabunnew.css" rel="stylesheet" type="text/css" />
<br />
<script src="jquery-2.0.2.js"></script> 
<script>//สคิปนี้ครับที่เกี่ยวข้อง
$(document).ready(function(){
    //trigger when type
    $('input[id^="count"]').keyup(function(){
        //find value1
        var value1 = parseFloat($(this).val());
        //check if is not a number, skip
        if(isNaN(value1)) return false;
        //find type of trigged
        var type = $(this).attr("id").split("_");
        //find number
        var no = parseInt(type[1]);
        //delete number
        type = type[0];
        //find Multiplier
        var value2 = parseFloat($('#'+(type=="value"?"count":"value")+"_"+no).val());
        //check if is not a number, skip
        if(isNaN(value2)) return false;
        //chenge value
        $("#result_"+no).val(value1*value2);
        //set start value
        var all_result = 0;
        //travel all result
        $('input[id^="result"]').each(function(){
            var curr_val = parseFloat($(this).val());
            if(!isNaN(curr_val)) all_result += curr_val;
        });
        //update all value
        $("#all_result").html(all_result);        
                
    });
    $("select.value").change(function(){
         var value1 = parseFloat($("option:selected",this).val());        
        if(isNaN(value1)) return false;
        var value2 = parseFloat($(this).parents("tr").find("td:nth-child(2) input:text").val());
         if(isNaN(value2)) return false;

        $(this).parents("tr").find("td:nth-child(3) input:text").val(value1*value2);

        var all_result = 0;
        //travel all result
        $('input[id^="result"]').each(function(){
            var curr_val = parseFloat($(this).val());
            if(!isNaN(curr_val)) all_result += curr_val;
        });
        //update all value
        $("#all_result").html(all_result);   
    }); 
});     
</script>
<form id='frm1' method='POST' action='#'> 
<table class="table table-bordered">
<thead>
<tr>     
<th style="white-space: normal; width:65px;" rowspan="2" align="center"><center><span class="thsarabunnew">(5)<br />ค่าคะแนนที่ได้</span></center></th>
<th width="25" rowspan="2" align="center"><center><span class="thsarabunnew">(6)<br />น้ำหนัก(ความสำคัญ/ความยากง่ายของงาน)</span></center></th>   
<th width="25" rowspan="2" align="center"><center><span class="thsarabunnew">(7)<br />ค่าคะแนนถ่วงน้ำหนัก<br />(5)*(6)/100</span></center></th>  
</tr>
<tr>
<th width="15" class="center"><center>
<span class="thsarabunnew">1</span>
</center></th>        
<th width="15" class="center"><center>
<span class="thsarabunnew">2</span>
</center></th> 
<th width="15" class="center"><center>
<span class="thsarabunnew">3</span>
</center></th>
<th width="15" class="center"><span class="thsarabunnew"><center>4</center></span></th> 
<th width="15" class="center"><center>
<span class="thsarabunnew">5</span>
</center></th> 
</tr>
 </thead>   
 <tbody>
<?php
require_once('../../connect/connectdb.php');
require_once('../../person/config.php');
$sqlav="SELECT dbo.ass_value.ass_id,dbo.ass_value.ass_name,dbo.ass_value.ass_type,dbo.ass_value.ass_detail,
dbo.ass_value.t_assid,dbo.ass_value.h_value
FROM dbo.ass_value WHERE dbo.ass_value.t_assid='".$_GET["at"]."'";
$qrav=sqlsrv_query($conn,$sqlav) or die($sqlav);
$i=1;					 
 ?>
<?php while($rsav=sqlsrv_fetch_array($qrav,SQLSRV_FETCH_ASSOC))
{
?>
<tr>
<td> <center>//ส่วนนี้คับที่เกี่ยวข้อง
<div class="control-group"><div class="controls">
<select style="width: 50px;" class="value" name="value[]" id="value_<?php echo $i;?>">
<option value='0'>select</option>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
</select>
</div></div></center></td>
<td>
<center><div class="control-group"><div class="controls">
<input style="width: 50px;" type ="text" name="count[]" value="<?php echo $rsav["h_value"];?>" id="count_<?php echo $i;?>" /></div></div></center>
</td>
 <td><center><div class="control-group"><div class="controls">
<input style="width: 70px;" type ="text" name="result[]" readonly="readonly" id="result_<?php echo $i;?>" />
</div></div></center>
</td>
</tr>
<?php	
++$i;}
?>
  </tbody>
 </form>   
</table>  



ประวัติการแก้ไข
2014-02-11 14:18:29
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 14:16:56 By : compiak
 


 

No. 10



โพสกระทู้ ( 1,096 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


แบบนี้ไม่ได้
cal

แบบนี้ได้
cal
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 14:55:16 By : compiak
 


 

No. 11



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


OK แบบนี้แหล่ะ รอสักครูน่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 15:04:36 By : sakuraei
 


 

No. 12



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


เอาโค้ดจาวาสคริปต์มารวมไว้ที่เดียวกันดีกว่า และในไฟล์พี่เห็นเรียก jquery ต้องหลายตัว
<script src="http://code.jquery.com/jquery-latest.js"></script>
  <script type="text/javascript">
  	$(document).ready(function() {
		  $('input[id^="count"]').keyup(function(){
        //find value1
        var value1 = parseFloat($(this).val());
        //check if is not a number, skip
        if(isNaN(value1)) return false;
        //find type of trigged
        var type = $(this).attr("id").split("_");
        //find number
        var no = parseInt(type[1]);
        //delete number
        type = type[0];
        //find Multiplier
        var value2 = parseFloat($('#'+(type=="value"?"count":"value")+"_"+no).val());
        //check if is not a number, skip
        if(isNaN(value2)) return false;
        //chenge value
        $("#result_"+no).val(value1*value2);
        //set start value
        var all_result = 0;
        //travel all result
        $('input[id^="result"]').each(function(){
            var curr_val = parseFloat($(this).val());
            if(!isNaN(curr_val)) all_result += curr_val;
        });
        //update all value
        $("#all_result").html(all_result);        
                
    });
    $("select.value").change(function(){
		//alert($(this).val());
		alert($("option:selected",this).val()+'..');
         var value1 = parseFloat($("option:selected",this).val());        
        if(isNaN(value1)) return false;
        var value2 = parseFloat($(this).parents("td").next().find("input:text").val());
		if(isNaN(value2)) return false;
		
        $(this).parents("td").next().next().find("input:text").val(value1*value2);

        var all_result = 0;
        //travel all result
        $('input[id^="result"]').each(function(){
            var curr_val = parseFloat($(this).val());
            if(!isNaN(curr_val)) all_result += curr_val;
        });
        //update all value
        $("#all_result").html(all_result);   
    }); 
	 $('a[href=#logout-confirm]').click(function(e) {
          var url = $(this).data('url');
          bootbox.dialog(' ต้องการออกจากระบบ ( Do you want to Logout ) ? ', [{
                         'label':'Sign Out',
                         'class':'btn btn-primary',
                         'icon':'icon-off icon-white',
                         'callback':function(S) {
                                return location.href = url;
                         }
                        },
                        {
                         'label':'Cancel',
                         'class':'btn',
                         'icon':'icon-remove icon-black'
                        }]);
       });
             $('a[href=#delete-confirm]').click(function(e) {
          var url = $(this).data('url');
          bootbox.dialog(' ต้องการลบ ( Do you want to Delete ) ? ', [{
                         'label':'Delete',
                         'class':'btn btn-primary',
                         'icon':'icon-trash icon-white',
                         'callback':function(S) {
                                return location.href = url;
                         }
                        },
                        {
                         'label':'Cancel',
                         'class':'btn',
                         'icon':'icon-remove icon-black'
                        }]);
       });
       $('a[href=#edit-confirm]').click(function(e) {
          var url = $(this).data('url');
          bootbox.dialog(' ต้องการแก้ไข ( Do you want to Edit ) ? ', [{
                         'label':'Edit',
                         'class':'btn btn-primary',
                         'icon':'icon-edit icon-white',
                         'callback':function(S) {
                                return location.href = url;
                         }
                        },
                        {
                         'label':'Cancel',
                         'class':'btn',
                         'icon':'icon-remove icon-black'
                        }]);
       });
});
</script>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 15:25:06 By : sakuraei
 


 

No. 13



โพสกระทู้ ( 1,096 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


ครับผม เดียวลองดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 16:10:19 By : compiak
 


 

No. 14



โพสกระทู้ ( 1,096 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


สวดยอดเลย ล๊วกพี่
ได้แล้วครับ เหมือนยกภูเขาออกจากอก ไปขึ้นนึ่ง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 16:14:56 By : compiak
 


 

No. 15



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 14 เขียนโดย : compiak เมื่อวันที่ 2014-02-11 16:14:56
รายละเอียดของการตอบ ::
จะขอไปเปิดคอร์สเทรนนิ่งที่เชียงรายได้มั๊ยครับ ....
ช่วยหาคนมาเรียนเยอะๆน่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-11 16:17:10 By : sakuraei
 


 

No. 16



โพสกระทู้ ( 1,096 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 15 เขียนโดย : sakuraei เมื่อวันที่ 2014-02-11 16:17:10
รายละเอียดของการตอบ ::
แค่ผมคนเดียวคงปวดหัว อิอิ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-12 10:37:57 By : compiak
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถาม การเปลี่ยนจาก input แบบ text เป็นแบบ select ในการนำค่าที่ได้ไปคำนวณแบบ auto (jquery)
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่