easyui1.2.4支持了数据编辑功能,但提供的东西有限,所以需要自己进行扩展。下面是扩展一个datetimebox的编辑器。
$.extend($.fn.datagrid.defaults.editors, { datetimebox: {//datetimebox就是你要自定义editor的名称 init: function(container, options){ var input = $('<input class="easyuidatetimebox">').appendTo(container); return input.datetimebox({ formatter:function(date){ return new Date(date).format("yyyy-MM-dd hh:mm:ss"); } }); }, getValue: function(target){ return $(target).parent().find('input.combo-value').val(); }, setValue: function(target, value){ $(target).datetimebox("setValue",value); }, resize: function(target, width){ var input = $(target); if ($.boxModel == true){ input.width(width - (input.outerWidth() - input.width())); } else { input.width(width); } } } });
自己测试过的代码
$.extend($.fn.datagrid.defaults.editors, { datetimebox :{ init: function(container, options){ var input = $('<input class="easyuidatetimebox">').appendTo(container); return input.datetimebox(); }, getValue: function(target){ return $(target).datetimebox("getValue"); }, setValue: function(target, value){ $(target).datetimebox("setValue",value); }, resize: function(target, width){ var input = $(target); if ($.boxModel == true){ input.width(width - (input.outerWidth() - input.width())); } else { input.width(width); } } } });