//扩展datagrid:动态添加删除editor //$("#dg").datagrid('removeEditor','cardNo');//这里的cardNo是需要移除editor的列的field值 // //$("#dg").datagrid('addEditor',[ // 添加cardNo列editor // {field:'cardNo',editor:{ // type:'textbox', // options:{ // required:true, // validType:'length[3,3]', // invalidMessage:'请输入3位号码!' // } // } //}] $.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 = {}; } } }); // 日期格式话函数 /* * columns: [ { field: 'updateTime', title: '更新时间', formatter: formatDatebox, * sortable: true, editor: 'datebox' } ] ] * * */ $.extend($.fn.datagrid.defaults.editors, { datebox : { init : function(container, options) { var input = $('').appendTo(container); input.datebox(options); return input; }, destroy : function(target) { $(target).datebox('destroy'); }, getValue : function(target) { return $(target).datebox('getValue');// 获得旧值 }, setValue : function(target, value) { // console.info(formatDatebox(value)); $(target).datebox('setValue', formatDatebox(value));// 设置新值的日期格式 }, resize : function(target, width) { $(target).datebox('resize', width); } } }); // easy ui datebox格式化方法 日期对象转换字符串 function formatDatebox(value) { if (value == null || value == '') { return ''; } var dt; if (value instanceof Date) { dt = value; } else { dt = new Date(value); } return dt.format("yyyy-MM-dd"); // 扩展的Date的format方法(上述插件实现) } // 时间格式化方法扩展 format Date.prototype.format = function (format) { if (!format) { format = "yyyy-MM-dd hh:mm:ss"; } var o = { "M+": this.getMonth() + 1, // month "d+": this.getDate(), // day "h+": this.getHours(), // hour "m+": this.getMinutes(), // minute "s+": this.getSeconds(), // second "q+": Math.floor((this.getMonth() + 3) / 3), // quarter "S": this.getMilliseconds() // millisecond }; if (/(y+)/.test(format)) { format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); } for (var k in o) { if (new RegExp("(" + k + ")").test(format)) { format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)); } } return format; }; // 日期格式化方法 yyyy-MM-dd hh:mm:ss function fomatDateTime(str) { return (new Date(parseInt(str.substring(str.indexOf('(') + 1, str.indexOf(')'))))).format("yyyy-MM-dd hh:mm:ss"); } // 日期格式化方法 yyyy-MM-dd function fomatDate(str) { return (new Date(parseInt(str.substring(str.indexOf('(') + 1, str.indexOf(')'))))).format("yyyy-MM-dd"); }