dwz的lookup功能中全选功能失效的问题

一、问题

dwz的lookup中的全选功能,第一个点击全选,正确无误。第二次点击全选,所有选中的CheckBox取消,也正确无误。第三次点击的时候,CheckBox应该是全部选中,然而,一个选中的都没有。如图:
这里写图片描述

二、过程

1、在网上找了很多,只有一个和我的问题一样。看了一下,我们的问题一样,但是,出错的地方不同。这个同志出错的地方是,dwz.frag.xml文件中与lookup函数class名不同,具体请看:http://blog.csdn.net/silence1214/article/details/9101421
2、看到网友的问题及解决方法,我由dwz.database.js文件推到dwz.checkbox.js文件。发现这个文件的中select函数是症状所在,select原函数:

    select: function(_name, _type, _parent){
            $parent = $(_parent || document);
            $checkboxLi = $parent.find(":checkbox[name='"+_name+"']");
            switch(_type){
                case "invert":
                    $checkboxLi.each(function(){
                        $checkbox = $(this);
                        $checkbox.attr('checked', !$checkbox.is(":checked"));
                    });
                    break;
                case "none":
                    $checkboxLi.attr('checked', false);
                    break;
                default:
                    $checkboxLi.attr('checked', true);
                    break;
            }
        }

三、解决方法

改select函数,dwz源文件中最新的dwz.checkbox.js文件,已经改好。解决问题的select函数是:

select: function(_name, _type, _parent){
            $parent = $(_parent || document);
            $checkboxLi = $parent.find(":checkbox[name='"+_name+"']");
            switch(_type){
                case "invert":
                    $checkboxLi.each(function(){
                        $checkbox = $(this);
                        $checkbox.attr('checked', !$checkbox.is(":checked"));
                    });
                    break;
                case "none":
                    $checkboxLi.removeAttr('checked');
                    break;
                default:
                    $checkboxLi.each(function(){
                        this.checked = true;
                    });
                    break;
            }
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值