zoukankan      html  css  js  c++  java
  • easyui enableFilter combobox级联 combotree

    //网格过滤
    function datagridFilter(dg) {
        dg.datagrid('enableFilter');
        dg.datagrid('enableFilter', [{
            field: 'townName',
            type: 'combobox',
            options: {
                url: 'area/getAreas.action?type=2&parentCode=330106',
                valueField: 'code',
                textField: 'name',
                onChange: function (value) {
                    //刷新数据,重新读取省份下的城市,并清空当前输入的值
                    var component = dg.datagrid('getFilterComponent', 'villageName');
                    component.combobox('reload', 'area/getAreas.action?type=2&parentCode=' + value);
                    if (value == '') {
                        dg.datagrid('removeFilterRule', 'townName');
                    } else {
                        dg.datagrid('addFilterRule', {
                            field: 'townName',
                            op: 'equal',
                            value: value
                        });
                    }
                    dg.datagrid('doFilter');
                },
                onLoadSuccess: function () {
                    var component = dg.datagrid('getFilterComponent', 'townName');
                    var component1 = dg.datagrid('getFilterComponent', 'villageName');
                    if (tvCode.length > 0) {
                        if (tvCode.length == 9) {
                            component.combobox('setValue', tvCode);
                            component1.combobox('reload', 'area/getAreas.action?type=2&parentCode=' + component.combobox('getValue'));
                        } else {
                            component.combobox('setValue', tvCode.substring(0, 9));
                            component1.combobox('reload', 'area/getAreas.action?type=2&parentCode=' + component.combobox('getValue'));
                            component.combobox('readonly', "true");
                        }
                    } else {
                        if (areaCode.length == 9) {
                            component.combobox('setValue', areaCode);
                            component.combobox('readonly', "true");
                            component1.combobox('reload', 'area/getAreas.action?type=2&parentCode=' + component.combobox('getValue'));
                        } else if (areaCode.length == 12) {
                            component.combobox('setValue', $("#areaCode").val().substring(0, 9));
                            component1.combobox('reload', 'area/getAreas.action?type=2&parentCode=' + component.combobox('getValue'));
                            component.combobox('readonly', "true");
                        } else {
                            dg.datagrid('doFilter');
                        }
                    }
                }
            }
        },
        {
            field: 'villageName',
            type: 'combobox',
            options: {
                //url:'area/getAreas.action?type=2&parentCode=330106',
                valueField: 'code',
                textField: 'name',
                onChange: function (value) {
                    //刷新数据,重新读取省份下的城市,并清空当前输入的值
                    if (value == '') {
                        dg.datagrid('removeFilterRule', 'villageName');
                    } else {
                        dg.datagrid('addFilterRule', {
                            field: 'villageName',
                            op: 'equal',
                            value: value
                        });
                    }
                    dg.datagrid('doFilter');
                },
                onLoadSuccess: function () {
                    var component = dg.datagrid('getFilterComponent', 'villageName');
                    var value = component.combobox('getValue');
                    if (tvCode.length == 12) {
                        component.combobox('setValue', tvCode);
                    }
                    if (areaCode.length < 12) {
                        dg.datagrid('addFilterRule', {
                            field: 'villageName',
                            op: 'equal',
                            value: value
                        });
                    } else if (areaCode.length > 9) {
                        component.combobox('setValue', areaCode);
                        component.combobox('readonly', "true");
                        dg.datagrid('addFilterRule', {
                            field: 'villageName',
                            op: 'equal',
                            value: value
                        });
                    }
                }
            }
        }]);
    }
    
    
    
    /**
    *使用combotree 示例
    */
    dg.datagrid('enbaleFilter',
        [{
            field: 'departmentName',
            type: 'combotree',
            options: {
                panelHeight: 'auto',
                multiple: true,
                url: 'commonaction/queryDepartmentorgTreeData.action',
                onLoadSuccess: function () {
                    var component = dg.datagrid('getFilterComponent', 'departmentName');
                    component.combotree('setValue', 4);
                },
                onChange: function (value) {
                    //var component = dg.datagrid('getFilterComponent', 'departmentName');
                    //var value=component.combotree('getValue');
                    dg.datagrid('addFilterRule', {
                        field: 'departmentName',
                        op: 'equal',
                        value: value
                    });
                    dg.datagrid("doFilter");
                }
            }
        }, {
            field: 'projectName',
            type: 'combotree',
            options: {
                url: "authorization/getProjectTreeByAccountId.action?accountId=" + $("#accountId").val(),
                panelHeight: "auto",
                editable: false, //不允许手动输入
                multiple: true,
                cascadeCheck: true,
                onLoadSuccess: function (data) { //数据加载完毕事件
                    var component = dg.datagrid('getFilterComponent', 'projectName');
                    var data = component.combotree('tree').tree("getRoots");
                    if (data.length > 0) {
                        component.combotree('tree').tree("check", data[0].target);//('select', data[0].target);
                    }
                },
                onChange: function (value) {
                    //var component = dg.datagrid('getFilterComponent', 'projectName');
                    //var data = component.combotree('tree').tree("getRoots");
                    //if (data.length > 0) {
                    //    component.combotree('tree').tree("check",data[0].target);//('select', data[0].target);
                    //}
                    var value = component.combotree('getValue');
                    dg.datagrid('addFilterRule', {
                        field: 'projectName',
                        op: 'equal',
                        value: value,
                    });
                    dg.datagrid("doFilter");
                }
            }
        }]);


    文章转自:http://www.cnblogs.com/ckaifeng/p/5006569.html

  • 相关阅读:
    从滴滴flinkCEP说起
    从零讲Java,给你一条清晰地学习道路!该学什么就学什么!
    从coalesce算子发散开的
    从架构理解价值-我的软件世界观
    为什么说Redis是单线程的?
    全排列_获取第几个排列_获取是第几个排列__康托展开,逆康托展开
    求排列是全排列的第几个,求第几个是全排列___康托展开,逆康托展开
    搜索入门_简单搜索bfs dfs大杂烩
    无根树同构_hash
    乘法逆元_三种方法
  • 原文地址:https://www.cnblogs.com/apollokk/p/6713799.html
Copyright © 2011-2022 走看看