easyui 扩展

来源:互联网 发布:阿里云 安全组规则 编辑:程序博客网 时间:2024/05/18 23:25

参考网址:http://jqext.sinaapp.com/#

http://uule.iteye.com/blog/2089867

https://github.com/cjw0511/jquery-extensions/

 

其中用到的一个动态改变列编辑的类型  

$.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 = {}; 
        } 
    } 
}); 

 

$("#gridId").datagrid('addEditor', { 
                        field : 'password', 
                        editor : { 
                            type : 'validatebox', 
                            options : { 
                                required : true 
                            } 
                        } 
                    }); 

 

自己尝试了一下  editor 也是可以直接new 一个object的如下

var editorTemp={};
       
       editorTemp.type="datebox";
       var opt={required:true};
       editorTemp.options=opt;       
       col.editor=editorTemp;

 

function onClickCell(index, field){if(endEditing()){$('#dg').datagrid('selectRow', index);var opts = $('#dg').datagrid('options');var fields = $('#dg').datagrid('getColumnFields',true).concat($(this).datagrid('getColumnFields'));for(var i=0; i<fields.length; i++){var col = $('#dg').datagrid('getColumnOption', fields[i]);col.editor1 = col.editor;if (fields[i]!= field){col.editor = null;}else{ if(field=="planTime"){//时间这一列比较特殊 不同的行 不一样的编辑器if(index==0||index==6||index==7||index==8||index==9){col.editor={type:'my97time',options:{required:true}}}else if(index==3){col.editor={type:'my97time'}}else if(index==1||index==2||index==4||index==5){col.editor={type:'timetotime',options:{required:true}}}} }}$('#dg').datagrid('beginEdit', index); for(var i=0; i<fields.length; i++){var col = $('#dg').datagrid('getColumnOption', fields[i]);col.editor = col.editor1;} editIndex = index;}}


 

0 0