大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在使用EasyUI treeGrid的editor进行行编辑的时候需要使用到combo多选下拉列表,通过查询API和源码后发现它并不支持combo,于是决定自己扩展,自定义一个combo Editor;
成都创新互联公司是一家集网站建设,项城企业网站建设,项城品牌网站建设,网站定制,项城网站建设报价,网络营销,网络优化,项城网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
通过查看源代码发现,定义一个editor,需要实现四个方法(init,getValue,setValue,resize)
这里一般注意init,getValue和setValue这三个方法,需要注意的是,这里的setValue和getValue方法都是针对于editor的,是给editor设值和获取值的。
定义combo:
$.extend($.fn.datagrid.defaults.editors, {
combo: {
init: function(container, options){
var input = $('').appendTo(container);
input.combo(options);
var html = "";
html+='
html+='
for(var i=0;i html+=''+options.data[i].name+' } html+='
';
$(html).appendTo($('#cc').combo('panel'));
$('#sp input').click(function(){
var _value="";
var _text="";
$("[name=lang]:input:checked").each(function(){
_value+=$(this).val()+",";
_text+=$(this).next("span").text()+",";
});
if(_value.length>0){
_value=_value.substring(0,_value.length-1);
}
if(_text.length>0){
_text=_text.substring(0,_text.length-1);
}
$('#cc').combo('setValue',_value).combo('setText', _text);
});
return input;
},
destroy: function(target){
$(target).combo('destroy');
},
getValue: function(target){
return $(target).combo('getValue');
},
setValue: function(target, value){
$(target).combo('setValue', value);
},
resize: function(target, width){
$(target).combo('resize',width);
}
}
});
使用:
页面展示效果: