Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么这个jQuery脚本不是';t在Chrome和Opera中工作,而it';它在Firefox、IE和Safari中非常好?_Jquery_Google Chrome_Opera - Fatal编程技术网

为什么这个jQuery脚本不是';t在Chrome和Opera中工作,而it';它在Firefox、IE和Safari中非常好?

为什么这个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

我使用以下脚本通过标题中的复选框选择gridview中的所有复选框

$("[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()。

我建议将此添加到您的问题中,因为这是您的主要问题:)