网格标题包含带复选框的所有列名称,最后一列是带复选框的重新分配列。最后一列中的所有单元格都包含复选框。因此,一旦我检查了标题中的复选框,那个特定列中的所有复选框都会得到检查。为此,我使用了.quive的jquery,它100%完美。但是,如果我想使用.On而不是.live它不起作用。在这里,我保留了jquery代码及其库。请帮我解决这个问题。提前致谢。
jquery for .live: $(“#<%= rgCaseRM.ClientID%>输入[id * ='chkHeaderRM']:复选框”)。live(“click”,function(){
var chkHeader = $(this);
$("#<%=rgCaseRM.ClientID%> input[id*='chkReAssign']").each(function (index) {
if (chkHeader.is(":checked")) {
$("td", $(this).closest("tr")).addClass("selected");
$(this).attr('checked', true);
$("#<%=divRM.ClientID%>").show();
}
else {
$(this).attr('checked', false);
$("td", $(this).closest("tr")).removeClass("selected");
$("#<%=divRM.ClientID%>").hide();
}
});
});
$(“#&lt;%= rgCaseRM.ClientID%&gt; input [id * ='chkReAssign']:checkbox”)。live(“click”,function(){ var grid = $(this).closest(“table”); var chkHeader = $(“#&lt;%= rgCaseRM.ClientID%&gt; input [id * ='chkHeaderRM']:checkbox”); if(!$(this).is(“:checked”)){ $(“td”,$(this).closest(“tr”))。removeClass(“selected”); chkHeader.removeAttr( “检查”); } else { $(“td”,$(this).closest(“tr”))。addClass(“selected”); if($(“[id * = chkReAssign]”,grid)。length == $(“[id * = chkReAssign]:checked”,grid)。length){ chkHeader.attr(“已检查”,“已检查”); } } var checkedCheckboxes = $(“#&lt;%= rgCaseRM.ClientID%&gt; input [id * ='chkReAssign']:checkbox:checked”)。size();
if (checkedCheckboxes > 0) {
$("#<%=divRM.ClientID%>").show();
}
else {
$("#<%=divRM.ClientID%>").hide();
}
});
答案 0 :(得分:1)
将以下'live'替换为'on',
$('selector').live('event', func);
您必须将其更改为
$(document).on('event', 'selector', func);