easyui datagrid动态修改editor为combobox的options

来源:互联网 发布:弥塞拉 知乎 编辑:程序博客网 时间:2024/06/08 20:04

最近有个需求就是当你打开datagrid的编辑状态时,要根据行数据的不同对应的combobox的下拉选项也不同。同时为了美观,打开编辑状态的时候combobox为我默认选择数据。我的实现思路是,原有的editor的data不动,重写onBeginEdit方法,在里面获取到要修改的editor,判断rowData的值,当需要修改时再进行操作。废话不多说,具体代码贴上:

onBeginEdit:function(index, rowData){            //统计方法下拉框            var smEditor = $('#FoTable').datagrid('getEditor', {                      index : index,                         field : 'statisticMethod'              });            $(smEditor.target).combobox({                onLoadSuccess: function () {                     $(smEditor.target).combobox('setValue', rowData.statisticMethod);                },                onShowPanel: function(){   //下拉展开时动态修改options                    //datatype处理统计方法                    if(rowData.dataType == 'string' || rowData.dataType == 'date'){                        var data = [];                        data.push({'key':'','value':'请选择'},                                {'key':'count','value':'计数'},                                {'key':'min','value':'最小'},                                {'key':'max','value':'最大'},                                {'key':'mode','value':'众数'});                        $(smEditor.target).combobox("loadData", data);                    }                    //设置值                                                $(smEditor.target).combobox('setValue', rowData.statisticMethod);                                }            });            //分组排序下拉框            var goEditor = $('#FoTable').datagrid('getEditor', {                      index : index,                         field : 'groupOrder'              });            $(goEditor.target).combobox({                onLoadSuccess: function () {                     $(goEditor.target).combobox('setValue', rowData.groupOrder);                },                onShowPanel: function(){   //下拉展开时动态修改options                    //datatype处理统计方法                    if(rowData.groupOrder == 0){                        var data = [];                        data.push({'key':'0','value':'无'},                                {'key':'1','value':'升序'},                                {'key':'-1','value':'降序'});                        $(goEditor.target).combobox("loadData", data);                    }                    //设置值                                                $(goEditor.target).combobox('setValue', rowData.groupOrder);                                    }            });        }


1 0
原创粉丝点击