在javascript中使用
<script type="text/javascript">
$(":checkbox").click(function(){
alert("yes");
});
</script>
一直无法生效。
原因:由于在生成checkbox时,使用的是ajax的方式动态生成,部分代码如下:
success: function(data) {
if(data.success) {
//数据部分
var content = "";
$.each(data.list,function (i,n) {
content+='<tr>';
content+=' <td>'+n.name+'</td>';
content+=' <td><input type="checkbox"></td>';
content+=' <td><input type="checkbox" ></td>';
content+=' <td><input type="checkbox" ></td>';
content+=' <td><input type="checkbox" ></td>';
content+='</tr>';
})
$("tbody").html(content);
}
解决办法:
- 由于我这个是页面跳转过来后才动态加载,将其改成,把数据先查询出来放到session域或者转成json返回出来,再在页面中使用jsp的动态标签c:foreach循环遍历出来。
- 使用事件委托的方式对其添加触发事件:
$(document).on("click","input[type='checkbox']",function(){
alert("111");
});
当然肯定还有其他方式,后续碰到之后再来完善。