$("#tblEntAttributes tbody").append('<tr>'
+ '<td><input type="checkbox" class="main" value="'+data.id+'" id=check'+data.id+'></td>'
+ '<td>'+ data.brand +'</td>'
+ '<td>'+ data.channel +'</td>'
+ '<td>'+ data.content +'</td>'
+ '<td>'+ data.destination_url +'</td>'
+ '<td>'+ data.sentiment + '</td>'
+ '<td>'+ data.post_date + '</td>'
+ '<td><p class="click_star" ><i id='+data.id+' class="'+star_class_var+'"></i></p></td>'
+ '<td><p class="click_flag" ><i id='+data.id+' class="'+flag_class_var+'"></i></p></td>'
+ '<td>'+ data.widget_flags +'</td>'
+ '</tr>'
);
以上代码段来自我的jquery,我需要检查表中的复选框是否已选中。它的id和值是动态命名的。如何检查是否单击了该复选框?我是jquery的新手。所以请帮忙
答案 0 :(得分:2)
您可以使用:
$('#tblEntAttributes tbody').on('click','input[type="checkbox"]',function() {
// Your code here
});
答案 1 :(得分:0)
试试这个,这将委托动态创建的复选框的on change事件
<script>
$(function(){
$(document).delegate("input[type='checkbox']","change",function(){
alert($(this).attr('id'));
});
});
<script>
答案 2 :(得分:0)
如果要在检查函数时调用函数,则在创建复选框后立即绑定该函数(在数据更改或超出范围之前):
$("#tblEntAttributes tbody").append('<tr>'
+ '<td><input type="checkbox" class="main" value="'+data.id+'" id="check'+data.id+'"></td>'
+ '<td>'+ data.brand +'</td>'
+ '<td>'+ data.channel +'</td>'
+ '<td>'+ data.content +'</td>'
+ '<td>'+ data.destination_url +'</td>'
+ '<td>'+ data.sentiment + '</td>'
+ '<td>'+ data.post_date + '</td>'
+ '<td><p class="click_star" ><i id='+data.id+' class="'+star_class_var+'"></i></p></td>'
+ '<td><p class="click_flag" ><i id='+data.id+' class="'+flag_class_var+'"></i></p></td>'
+ '<td>'+ data.widget_flags +'</td>'
+ '</tr>');
$('#check'+data.id).change(function(){console.log($(this).attr('checked'))});