EasyUi combobox-checkbox 带全选功能


        $(function () {
            binProvince();
        });

        function binProvince() {
            //            $.get("StatusEnquiry.ashx?M=GetProvince", function (data, statue) {
            var datas = [{ "ID": 0, "Name": "全选" }, { "ID": 1, "Name": "北京" }, { "ID": 2, "Name": "天津"}];
            $('#Se_Province').combobox({
                // url: 'StatusEnquiry.ashx?M=GetProvince',
               data: datas,
                textField: 'Name',
                valueField: 'ID',
                multiple: true,
                formatter: function (row) {

                    var opts = $(this).combobox('options');

                    return '<input type="checkbox" class="combobox-checkbox">' + row[opts.textField]

                },



                onShowPanel: function () {

                    var opts = $(this).combobox('options');

                    var target = this;

                    var values = $(target).combobox('getValues');

                    $.map(values, function (value) {

                        var el = opts.finder.getEl(target, value);

                        el.find('input.combobox-checkbox')._propAttr('checked', true);

                    })

                },

                onLoadSuccess: function () {

                    var opts = $(this).combobox('options');

                    var target = this;

                    var values = $(target).combobox('getValues');

                    $.map(values, function (value) {

                        var el = opts.finder.getEl(target, value);

                        el.find('input.combobox-checkbox')._propAttr('checked', true);

                    })

                },

                onSelect: function (row) {
                    var opts = $(this).combobox('options');
                    if (row[opts.valueField] == 0) {
                        $(this).combobox('clear');
                        $(this).combobox('setValue', 0);
                        var values = $(this).combobox('getData');
                        for (var i = 0; i < values.length; i++) {
                            var el = opts.finder.getEl(this, values[i][opts.valueField]);

                            el.find('input.combobox-checkbox')._propAttr('checked', true);
                            //el.find('input.combobox-checkbox').prop('disabled', false);
                        }
                    }
                    else {

                        var value = $(this).combobox('getValues');
                        var aaa = value.indexOf("0");

                        if (value.indexOf("0") == -1) {

                            var a = row[opts.valueField];
                            var el = opts.finder.getEl(this, row[opts.valueField]);

                            el.find('input.combobox-checkbox')._propAttr('checked', true);
                        }
                        else {
                            $(this).combobox('clear');
                            $(this).combobox('setValue', 0);
                        }
                    }
                },

                onUnselect: function (row) {
                    var opts = $(this).combobox('options');
                    $(this).combobox('clear');
                    if (row[opts.valueField] == 0) {
                        var values = $(this).combobox('getData');
                        for (var i = 0; i < values.length; i++) {
                            var el = opts.finder.getEl(this, values[i][opts.valueField]);
                            el.find('input.combobox-checkbox')._propAttr('checked', false);
                        }
                    }
                    else {



                        var el = opts.finder.getEl(this, row[opts.valueField]);

                        el.find('input.combobox-checkbox')._propAttr('checked', false);
                    }

                }



            });           
        };
        

 

转载于:https://my.oschina.net/qihaitao/blog/704337

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值