easyui本身是不提供这么细节的功能的,需要我们自己拓展下:
在easyui.min.js中扩展:
$.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 = {};
}
}
});
然后在项目中应用如下:
删除 editor:
$(
"#dg"
).datagrid(
'removeEditor'
,
'cardNo'
);
//这里的cardNo是需要移除editor的列的field值
添加editor:
$(
"#dg"
).datagrid(
'addEditor'
,[
//添加cardNo列editor
{field:
'cardNo'
,editor:{
type:
'textbox'
,
options:{
required:
true
,
validType:
'length[3,3]'
,
invalidMessage:
'请输入3位号码!'
}
}
}]