为什么这个jQuery脚本不是';t在Chrome和Opera中工作,而it';它在Firefox、IE和Safari中非常好?
我使用以下脚本通过标题中的复选框选择gridview中的所有复选框为什么这个jQuery脚本不是';t在Chrome和Opera中工作,而it';它在Firefox、IE和Safari中非常好?,jquery,google-chrome,opera,Jquery,Google Chrome,Opera,我使用以下脚本通过标题中的复选框选择gridview中的所有复选框 $("[id*=chkboxSelectAll]").click(function () { var chkboxSelectAll = $(this); var grid = "[id*=grdStudents]"; $("input[type=checkbox]", grid).each(function () { if (chk
$("[id*=chkboxSelectAll]").click(function ()
{
var chkboxSelectAll = $(this);
var grid = "[id*=grdStudents]";
$("input[type=checkbox]", grid).each(function ()
{
if (chkboxSelectAll.is(":checked"))
{
$(this).prop("checked", "checked");
} else
{
$(this).removeProp("checked");
}
});
});
上一个脚本中的问题如下所示:
$(this).removeProp("checked");
$(this).prop("checked", "");
我将其替换为以下行:
$(this).removeProp("checked");
$(this).prop("checked", "");
然后它工作得很好你知道为什么这会在某些浏览器中出现问题,而在其他浏览器中则不会出现问题吗?浏览器清楚地说明:
注意:不要使用此方法删除本机属性,例如
选中、禁用或选择。这将删除该属性
完全删除,并且一旦删除,就不能再次添加到元素中使用
.prop()将这些属性改为false。
作为警告,如果您计划不再使用该属性,请尽量避免removeProp()。我建议将此添加到您的问题中,因为这是您的主要问题:)