【jEasyUI DataGrid扩展】动态添加、删除DataGrid列的editor

    今天遇到一个需求,要动态添加或者删除DataGrid列的editor,具体就是有一个可编辑的DataGrid,在新增一行的时候,每个单元格的值都是手动录入的,但是编辑的时候,某列(比如XX代码列)是不能编辑的,于是经过百度,得出如下解决方案:

    1、因为jEasyUI DataGrid本身并没有提供此功能,所以需要自己扩展这两个功能,代码如下:

//扩展datagrid:动态加入、删除editor
$.extend($.fn.datagrid.methods, {
    addEditor : function(jq, param) {
        if (param instanceof Array) {
            $.each(param, function(index, item) {
                var e = $(jq).datagrid('getColumnOption', item.field);
                e.editor = item.editor; });
        } else {
            var e = $(jq).datagrid('getColumnOption', param.field);
            e.editor = param.editor;
        }
    },
    removeEditor : function(jq, param) {
        if (param instanceof Array) {
            $.each(param, function(index, item) {
                var e = $(jq).datagrid('getColumnOption', item);
                e.editor = {};
            });
        } else {
            var e = $(jq).datagrid('getColumnOption', param);
            e.editor = {};
        }
    }
});

2、方法调用:

        2.1 加入editor:

$("#xxDg").datagrid("addEditor", [
    {field: "COLFIELD", editor:{
            type: "textbox",
            options:{
                required:true
            }
        }
    }
]);

    2.2 删除editor:

$("#xxDg").datagrid("removeEditor", "COLFIELD");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值