2011-07-22 24 views
0

在下面顯示的代碼....它應該能夠只提取複選框被選中..但它是取值爲未定義....什麼是代碼中的問題... ...,它顯示所有的檢查,未經檢查checbox錶行的內容問題與jquery代碼複選框值取作爲undefined

 for(k=1;k<=9000;k++) 
     { //each change 
    $("#status"+k).live('click', function() { 
     for(j=1;j<=k;j++) 
    { 
     alert (j); 
      //var status = $("input[name=status]:checked").val(); 
              //alert(status); 
      if ($('#status:checked').val() !== undefined) { 
              alert("false"); 
      var product_name = encodeURIComponent($('#product_name'+j).val());  
      var barcode = encodeURIComponent($('#barcode'+j).val()); 
      var Quantity = encodeURIComponent($('#Quantity'+j).val()); 
      var cart=product_name + barcode + Quantity; 
        alert(cart); 
         } else { 
        alert("true"); 
      } 

     $('#cart1').val(cart); 
    } 

    }); 

} 
+2

清理你的代碼。從開始刪除多餘的空間。 – hsz

+2

難道你不能創建一個通用類來綁定點擊,而不是循環它9000次? – PeeHaa

回答

0
if ($('#status').is(':checked')) { 
0

試試這個:

if($(this).is(':checked')) { 

代替的:如果($('#狀態:checked')。val()!== undefined){

我也建議你使用jQuery .delegate()來擺脫那個循環。 http://api.jquery.com/delegate/