优点:ajax 异步获取数据,动态绑定,支持半模糊查询(顺序查询)
缺点:不支持纯模糊查询
想完全支持模糊查询:请移步easyUI combobox 文本框模糊搜索问题
上图:
html 页面代码
<input class="easyui-combobox" name="CVirDptCde" id="CVirDptCde" data-options="valueField:'id',textField:'text',panelHeight:'auto',panelMaxHeight:200,panelMinHeight:100" style="width: 200px;height: 29px"/>
js 代码
$.ajax({
url:'common_loadOrganDpt.action',
type:"post",
dataType:'json',
data:{CDptCde:CDptCde},
success:function(datas){
$("#"+id).find("option:gt(0)").remove();
$("#"+id).combobox({
width: 200,
valueField: 'id',
textField: 'name',
data: datas,
filter: function(q, row){
var opts = $(this).combobox('options');
return row[opts.textField].indexOf(q) >= 1;
}
});
}
});
java 代码(简单来说就是返回一个 jsonList)
//加载客户机构
public String loadOrganDpt(){
String CDptCde = request.getParameter("CDptCde");
Map<String,Object> params = new HashMap<String, Object>();
if(StringUtils.isNotBlank(CDptCde)){
params.put("CDptCde", CDptCde);
}
List<WxOrgan> list = organDptService.getList(WxOrgan.class,params);
List<Map<String,Object>> jsonList = new ArrayList<Map<String,Object>>();
for (WxOrgan organ : list) {
Map<String,Object> map = new HashMap<String,Object>();
map.put("id", organ.getCVirtualCde());
map.put("name", organ.getCVirtualNme());
jsonList.add(map);
}
Struts2Utils.renderJson(jsonList, "encoding:utf-8");
return null;
}
默认选中
$('#CVirDptCde').combobox('setValue', CVirDptCdes);
延时加载
setTimeout(function(){
}, 1000)
1000代表毫秒数