一、combobox 前台页面动态加载显示
判断输入值在下拉列表是否存在
var nameStr ='';
$(document).ready(function(){
$('#customerId').combobox({
prompt:'请输入或选择客户名称',//prompt属性为没有选中任何选项的时候显示的标签 如“--性别--”url:'${rc.contextPath}/sale/findBusinessPartnerByName',
valueField:'id',
textField:'text' ,
onClick: function(node) {
attributeShow($("#customerId").combotree("getValue"));
},
filter: function(q, row){//filter属性模糊查询var opts = $(this).combobox('options');
//return row[opts.textField].indexOf(q) == 0;
return row[opts.textField].indexOf(q)>-1;//将从头位置匹配改为任意匹配
},
onLoadSuccess: function(){
var partnerId = '${(saleOrder.partnerId)!}';
if(partnerId){
$('#customerId').combobox('setValue',partnerId);
}
},
onSelect: function(){
var partnerId = $("#customerId").combotree("getValue");
$("#business_partner_id").val(partnerId);
findBusinessPartnerContactByPartnerId(partnerId);
findSaleAddressByPartnerId(partnerId);
},
onChange: function(newValue, oldValue){
var v = $("#customerId").combotree("getText");
var arr = nameStr.split(',');
var index = $.inArray(v, arr);
if(index < 0 ){
$("#business_partner_id").val('');
}else{
$("#business_partner_id").val($("#customerId").combobox("getValue"));
}
},
formatter: function(row){
var opts = $(this).combobox('options');
nameStr += row[opts.textField] + "," ;
return row[opts.textField];
}
});
});
Combobox用法和方法参数:
1、 需要引入class=" easyui-combobox”
2、 参数设置需要在data-options中设置
3、 属性参数配置:
valueField:基础数据值名称绑定到Combobox(提交值)
textField:基础数据的字段名称绑定的Combobox(显示值)
mode:定义当文本改变时如何加载列表数据,当设置为remote模式下,什么类型的用户将被发送http请求参数名为'q'的服务器,以获取新的数据。
url:从远程URL来加载列表数据
method:http方法检索列表数据
data:列表中被加载的数据
filter:定义如何过滤本地数据“模式”设置为'local'
formatter:定义如何呈现行
loader:定义如何从远程服务器加载数据
4、 事件:
onBeforeLoad(param): 操作之前将数据加载,返回false就取消这个荷载作用
onLoadSuccess():触发时,远程数据加载成功
onLoadError:触发时,远程数据加载错误
ONSELECT:触发,当用户选择一个列表项
onUnselect:触发,当用户取消选择一个列表
5、方法:
options():返回选择对象
getData():返回加载的数据
loadData(data):加载列表数据
reload(url