标签:
easyui下拉框的值为json格式栗子:
前台的写法:
function queryDes(){ $(‘#des‘).combobox({ url: ‘businessBaseInfo/queryDes.action‘, valueField:‘enmDatOpt‘, //往后台传的值 textField:‘enmDatDes‘ //前台下拉框显示的内容 }); }
url获取的json格式为下,这里的数据是后台包装好的json格式,可以直接获取:
[ { "enmDatDes": "生猪代宰户", "enmDatOpt": "2001" }, { "enmDatDes": "生猪经销商", "enmDatOpt": "2002" }, { "enmDatDes": "活羊经销商", "enmDatOpt": "2022" }, { "enmDatDes": "全部", "enmDatOpt": "" } ]
同时也有后台给的json不符合规则,我的做法是前台解析json,然后重新包装数据例如:
{ "errorCode": 10000, "errorMsg": "操作成功", "list": [ { "enmCnNam": "流通节点类型", "enmDatDes": "屠宰厂", "enmDatLen": "4", "enmDatOpt": "0001", "enmEnNam": "NODETYPE", "enmNo": "1", "sysId": "1000", "sysNam": "肉菜系统" }, { "enmCnNam": "流通节点类型", "enmDatDes": "超市", "enmDatLen": "4", "enmDatOpt": "0004", "enmEnNam": "NODETYPE", "enmNo": "11", "sysId": "1000", "sysNam": "肉菜系统" }, { "enmCnNam": "流通节点类型", "enmDatDes": "团体消费单位", "enmDatLen": "4", "enmDatOpt": "0005", "enmEnNam": "NODETYPE", "enmNo": "12", "sysId": "1000", "sysNam": "肉菜系统" } ] }
前台接受json并解析,前台下拉框数据需要的是enmDatDes和enmDatOpt这两个,那么就包装这两个:
var StuArrayObjs = []; function queryDes(){ $.ajax({ url:‘common/findDicList?enmEnNam=NODETYPE‘, dataType:"json", type:"POST", success:function(data){ var obj = eval(data); for(var i=0;i<obj.list.length;i++){ var StuArrayObj = {}; StuArrayObj["enmDatDes"] = obj.list[i].enmDatDes; StuArrayObj["enmDatOpt"] = obj.list[i].enmDatOpt; StuArrayObjs.push(StuArrayObj); } //var TeachCourseJsonString = JSON.stringify(StuArrayObjs); 注意这个,下拉框的数据不是要这个 $(‘#des1‘).combobox({ data:StuArrayObjs, valueField : ‘enmDatOpt‘, //往后台传的值 textField : ‘enmDatDes‘ //前台下拉框显示的内容 }); } }); }
这样就完成了。
标签:
原文地址:http://www.cnblogs.com/loman/p/4467946.html