前台js代码
[code="java"]
var projectStore = new Ext.data.JsonStore({
url : 'http://localhost:8080/HyitSystem/provinceData.action',//这里是数据源,这地方我用的ajax映射到后台的service方法,返回上面的JSON串数据
root : 'value',//这里的value对应上传JSON串中的value
fields : ['id','province']//这里的两个变量也分别对应上面JSON串中value数组内的key
});
var projectCombo = new Ext.form.ComboBox({
emptyText : "请选择",
store : projectStore,
valueField : "id",//这是实际的值可以通过getValue()方法取出来
displayField : "province",//这是显示值可以用getRawValue()方法取出来
mode : "remote",//这里是remote代表取得远程服务器的值,如果为local则是取得本地的值
triggerAction : "all",
editable : false,
allowBlank : false,
applyTo:"comboProvince",
hiddenName:"typeValue",
listeners : {
'select': function() {
alert(projectCombo.getRawValue());
}
}
});
[/code]
后台返回json格式的数据如下:
{"result":false,"value":"[{'id':'1','province':'河南省'},{'id':'2','province':'河北省'},{'id':'3','province':'山西省'},{'id':'4','province':'山东省'},{'id':'5','province':'湖南省'},{'id':'6','province':'湖北省'},{'id':'7','province':'四川省'},{'id':'8','province':'辽宁省'},{'id':'9','province':'吉林省'},{'id':'10','province':'黑龙江省'},{'id':'11','province':'广东省'},{'id':'12','province':'浙江省'},{'id':'13','province':'福建省'},{'id':'14','province':'甘肃省'},{'id':'15','province':'江西省'},{'id':'16','province':'陕西省'},{'id':'17','province':'海南省'},{'id':'18','province':'江苏省'},{'id':'19','province':'安徽省'},{'id':'20','province':'云南省'},{'id':'21','province':'贵州省'},{'id':'22','province':'天津市'},{'id':'23','province':'北京市'},{'id':'24','province':'上海市'},{'id':'25','province':'重庆市'},{'id':'26','province':'新疆维吾尔族自治区'},{'id':'27','province':'内蒙古自治区'},{'id':'28','province':'西藏自治区'},{'id':'29','province':'广西壮族自治区'},{'id':'30','province':'宁夏回族自治区'},{'id':'31','province':'香港特别行政区'},{'id':'32','province':'澳门特别行政区'}]"}
结果就是combox能用,可以下拉,但是里面没有值,不知道什么原因,麻烦帮我看下!