2 saymorning world saymorning_world 于 2015.05.28 15:36 提问

js怎样将返回的json数据读取到s:select中

json数据

 [{"inherit":6,"majorID":7,"majorName":"交通工程系"},{"inherit":6,"majorID":9,"majorName":"交通运输工程研究所"},{"inherit":6,"majorID":8,"majorName":"交通运输系"}]

s:select

              <s:select tabindex="-1" 
                                          list="#request.majorList" name="major" id="major"
                                          listKey="majorID" listValue="majorName" value="#request.user.major"
                                          headerKey="" headerValue="--请选择--" 
                                          cssClass="chzn-select" 
                                      >
                       </s:select>

js应该怎么写

1个回答

showbo
showbo   Ds   Rxr 2015.05.28 16:29
已采纳
 var d=[{"inherit":6,"majorID":7,"majorName":"交通工程系"},{"inherit":6,"majorID":9,"majorName":"交通运输工程研究所"},{"inherit":6,"majorID":8,"majorName":"交通运输系"}];
var sel=document.getElementById('major');
sel.options.length=0;//清空原来的项,如果不想清空去掉这句
for(var i=0;i<d.length;i++)
sel.options.add(new Option(d[i].majorName),d[i].majorID));
saymorning_world
saymorning_world 弄好了,谢谢*n*
2 年多之前 回复
showbo
showbo 回复我涨: xmlHttp.responseText是字符串,要eval生成json对象数组
2 年多之前 回复
saymorning_world
saymorning_world 谢谢你,加上你的这段代码,再去掉select的class样式,我的问题解决了。只是(d[i].majorName),d[i].majorID)中间多了“)”。
2 年多之前 回复
saymorning_world
saymorning_world alert(sel.options.length);sel.options.length=0; 显示0,sel.options.length不能得到select的长度。
2 年多之前 回复
saymorning_world
saymorning_world 直接执行上面的代码,也不行
2 年多之前 回复
saymorning_world
saymorning_world js不能执行,select没有改变,var data=xmlHttp.responseText;得到data,还需要进行什么处理吗?
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片