zoukankan      html  css  js  c++  java
  • easyui的combobox带checkbox的全选功能

    var getData = function () {
        var data;
        $.ajax({
            url: '/getMATTypeList',
            type: 'get',
            async: false,
            success: function (result) {
                data = result;
                //数组头部添加元素
                data.unshift({"G_MATTYPENAME": "全选", "G_MATTYPECODE": ""});
            }
        });
        return data;
    }
    
    function  initMatTypeCombobox(){
        $('#G_MATTYPECODE').combobox({
            valueField: 'G_MATTYPECODE',
            textField: 'G_MATTYPENAME',
            multiple: true,
            editable: false,
            panelHeight: 200,
            readonly: false,
            data: getData(),
            onClick: function (record) {
                var valueField = $("#G_MATTYPECODE").combobox("options").valueField;
                if (!record[valueField]) {
                    var data = $("#G_MATTYPECODE").combobox("getData");
                    var values = $("#G_MATTYPECODE").combobox("getValues");
                    var selectVaues = [];
                    if ((data.length - 1) != values.length) {
                        data.reduce(function (prev, current, index, array) {
                            selectVaues.push(current[valueField]);
                        }, selectVaues);
                    } else {
                        selectVaues.push(record[valueField]);
                    }
                    $("#G_MATTYPECODE").combobox('setValues', selectVaues);
                }
            },
            formatter: function (row) { //formatter方法就是实现了在每个下拉选项前面增加checkbox框的方法
                var opts = $("#G_MATTYPECODE").combobox('options');
                return '<input type="checkbox" class="combobox-checkbox">' + row[opts.textField]
            },
            onSelect: function (row) { //选中一个选项时调用
                var opts = $(this).combobox('options');
                //设置选中值所对应的复选框为选中状态
                var el = opts.finder.getEl(this, row[opts.valueField]);
                el.find('input.combobox-checkbox')._propAttr('checked', true);
            },
            onUnselect: function (row) {//不选中一个选项时调用
                var opts = $(this).combobox('options');
                var el = opts.finder.getEl(this, row[opts.valueField]);
                el.find('input.combobox-checkbox')._propAttr('checked', false);
            }
        });
    }
  • 相关阅读:
    Java 21-Spring知识
    Java18-黑马旅游网学习制作
    Java17-Filter&Listener&Json&redis&maven
    python发邮件
    一元模型拟合(OLS和插值np拟合)
    一元模型拟合
    2.13 描述性统计(平均数,中位数,中数,数据的离散度(极差,平均绝对偏差,方差标准差))
    tushare 股票数据获取,收益率计算,直方图绘制
    主板指数数据的爬取(selenium处理JS)
    网页整页截图小工具
  • 原文地址:https://www.cnblogs.com/xiaoruilin/p/14865852.html
Copyright © 2011-2022 走看看