這是jsp代碼,若是須要有查詢的下拉框:使用editable:true,loader:btsloader,mode:'remote' ajax
<input id="unitname" type="text" class="easyui-combobox" name="problemType" data-options="editable:true,panelHeight:'auto',valueField:'ORG_CODE',textField:'ORG_NAME', panelHeight:270,loader:btsloader,mode:'remote'" style="width:200px;height:32px;vertical-align:middle;"/>
js代碼:q爲輸入的內容---遍歷的時候下面的代碼能夠 spring
var btsloader = function (param, success, error){ var q = param.q || ""; if (q == undefined || q == "" || q == null){ return false; } $.ajax({ url: "agentsmanage_findUnitNameList.do", type: "post", data: {param: q},//後臺使用param這個變量接收傳值的,後臺用了struts、spring後面就不拓展說明了 dataType: "json", success: function (data) { success(data);//調用loader的success方法,將items添加到下拉框中,這裏是難點啊,以前後臺已經返回數據了,但就是不添加到下拉框 } }); }
上述代碼有1個BUG,當不作(if (q == undefined || q == "" || q == null){
return false;
})時,q爲空,後臺獲取參數的時候 會執行3次,浪費資源,若是作了上述判斷,初始加載的時候就沒有數據。json
<td align="center" width="300px;"> 組織機構: <input id="orgname" type="text" class="easyui-combobox" name="orgname" data-options="editable:false,panelHeight:'auto',valueField:'ORG_CODE',textField:'ORG_NAME', url:'weekplantask_findOrgList.do',panelHeight:170" style="width:170px;height:30px;vertical-align:middle;" /> </td> <td align="left"> 單位: <input id="empunitname" type="text" class="easyui-combobox" name="problemType" data-options="editable:true,panelHeight:'auto',valueField:'ORG_CODE',textField:'ORG_NAME', panelHeight:270,loader:btsloader,mode:'remote'" style="width:150px;height:32px;vertical-align:middle;"/> </td> <td align="left"> 部門: <input id="deptname" type="text" class="easyui-combobox" name="problemType" data-options="editable:false,panelHeight:'auto',valueField:'ORG_CODE',textField:'ORG_NAME', panelHeight:140" style="width:160px;height:32px;vertical-align:middle;"/> </td> //初始化datagrid數據 $('#tt').datagrid({ queryParams:{ username:$('#empname').val(), unitname:$('#empunitname').combobox('getText'), deptname:$('#deptname').combobox('getText'), unitcode:$('#empunitname').combobox('getValue'), deptcode:$('#deptname').combobox('getValue') } }); $('#empunitname').combobox({ onSelect: function (n,o) { $('#deptname').combobox('clear'); var parentCode=$('#empunitname').combobox('getValue'); //n.ORG_CODE if(parentCode!=null&&parentCode!=''){ var url='agentsmanage_findDeptNameList.do?parentorgcode='+parentCode; $('#deptname').combobox('reload',url); }else{ $('#deptname').combobox('loadData',''); } } });