Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.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
JavaScript点击添加类在IE9中工作,不';我不能在IE7-8中工作_Javascript_Internet Explorer 8_Click_Replace_Checked - Fatal编程技术网

JavaScript点击添加类在IE9中工作,不';我不能在IE7-8中工作

JavaScript点击添加类在IE9中工作,不';我不能在IE7-8中工作,javascript,internet-explorer-8,click,replace,checked,Javascript,Internet Explorer 8,Click,Replace,Checked,我正在使用脚本: 切换“我的复选框替换”元素的类 更改复选框本身的状态 根据复选框本身的状态初始化复选框替换的状态 它在每个浏览器(包括IE9)中都可以正常工作,但在IE7和IE8中都会失败。 在IE7-8中,点击元素没有效果。它既不添加类也不更改复选框状态 /** BEGIN CheckBox **/ $.fn.xCheckBoxList = function () { this.Check = function (clientId, isSingleSelection) {

我正在使用脚本:

  • 切换“我的复选框替换”元素的类
  • 更改复选框本身的状态
  • 根据复选框本身的状态初始化复选框替换的状态
  • 它在每个浏览器(包括IE9)中都可以正常工作,但在IE7和IE8中都会失败。 在IE7-8中,点击元素没有效果。它既不添加类也不更改复选框状态

    /** BEGIN CheckBox **/
    $.fn.xCheckBoxList = function () {
        this.Check = function (clientId, isSingleSelection) {
            $(document).ready(function () {
                var checkBox = $("#" + clientId + " .x_checkBox");
                $(checkBox).has("input:checked").addClass("x_checkBoxChecked");
                $(checkBox).click(function () {
                    if (isSingleSelection) {
                        $(this).siblings().find("input").attr("checked", false);
                    }
                    $(checkBox).has("input:checked").addClass("x_checkBoxChecked");
                    $(checkBox).has("input:not(:checked)").removeClass("x_checkBoxChecked");
                });
            });
        }
    
        return this;
    }
    /** END CheckBox **/
    

    有什么想法吗?

    我也有同样的问题。似乎简单的addClass和其他Mootools 1.2方法在IE8中不起作用。为了在IE8中实现这一点,应该提供一些替代实现。 如果您找到了更好的解决方案,请告诉我们

    我在“If(isSingleSelection)”之前添加了一个警报,在firefox/IE9中,事件触发两次,在IE8中仅触发一次。我将尝试检查html代码和类。