2013-04-09 57 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