2013-04-09 54 views
0

我正在使用ajax項目。 我有一個用戶名稱,地址,郵政編碼的形式。 輸入名稱,地址或郵政編碼匹配的行由ajax文件顯示。使用由Ajax創建的複選框

等等選擇複選框我想做一些進一步的活動。

我的HTML代碼

Address : <input type="text" name="user_name" id="from_location" value="" class="in_form" /> 
<div id="user"></div> 

和jQuery代碼

$.ajax({ 
       url: "ajax_user.php", 
       data: { 
        address: address, 

       }, 
       dataType: "html", 
       type: "POST", 
       success: function(result){ 
         $("#user").append(result); 
        } 
       }) 
      } 

和Ajax用戶PHP是

$sql= "SELECT * FROM instructor_mst WHERE sex='$sex' AND car_type='$car_type' AND address Like '%$address%' "; 
     if (!$sqli=mysql_query($sql)){ 
      echo mysql_error(); 
     } 
     $num_rows= mysql_num_rows($sqli); 
     if($num_rows != 0) 
     {?> 
     <table border="0" class="form_ins" > 
     <? 
     while ($row = mysql_fetch_array($sqli)) 
     { 

     ?>  
     <tr> 
      <td> 

      </td> 
      <td> 
       Name 
      </td> 

      <td> 
       Address 
      </td> 



     </tr> 
     <tr> 
      <td> 
       <input type="checkbox" name="select" value"<?php echo $row['id'];?>"> 
      </td> 
      <td> 
       <?php echo $row['name'];?> 
      </td> 

      <td> 
       <?php echo $row['address'];?> 
      </td> 



     </tr> 
     </table 
     <?} 

的結果我得到了像

複選框|用戶名|解決

現在開始選擇我要提交其他活動的複選框.... 我沒有得到我怎麼能做到這一點...所有的答案將appreicieted

回答

2

爲動態地添加你的複選框 -

$(document).on('change','input[type=checkbox]',function(){ 
     if($(this).is(':checked')){ 
     // do something 
     } 
}); 

或者,如果你有你的複選框的ID -

$(document).on('change','#checkBoxID',function(){ 
    if($(this).is(':checked')){ 
    // do something 
    } 
}); 
+0

請加(文檔)$ .live(函數(){...}),以相同的是動態生成chckbox等JavaScript的DOM將不會有複選框,當文件準備如此Live將必須使用 – 2013-04-09 09:38:46

+0

您應仔細(重新)閱讀jQuery文檔@SaurabhSinha。 @MohammadAdil你必須改變你的條件爲'.is(':checked')'。 – Simon 2013-04-09 09:41:39

+0

@SaurabhSinha .live從jquery 1.7 – 2013-04-09 09:42:25

0

你需要委派使用click事件210動態添加元素是複選框在您的情況

$(document).on('click','input[name="select"]',function(){ 
     //this is called when you select the checkbox 
     //do your stuff 
}) 

,或者委託給更新

複選框可能有多個值,以便讓所有的最接近的靜態元素

$('#user').on('click','input[name="select"]',function(){ 
    //dou your stuff 
}); 

值檢查你需要循環的值或使用地圖()

試試這個

$('#user').on('click','input[name="select"]',function(){ 
    var selectedValue = $("input[name='select']:checked").map(function(n){ 
      return this.value; 
    }); 
    console.log(selectedValue); //this will print array in console. 
    alert(seletedValue.join(',')); //this will alert all values ,comma seperated 
    }); 
+0

這是確定的,但如果我想要取值的複選框,它只顯示「on」,如警報($(this).val()); – 2013-04-10 04:39:28

+0

嘗試我的更新...這將gove你所有vlaues..comma分離 – bipen 2013-04-10 04:47:09

+0

感謝所有......我得到了錯誤.....我錯過了「=」符號設置值 – 2013-04-11 06:03:32