[code="java"]
var data = "[{rowId:'29',deptName:'系统支持部'},{rowId:'31',deptName:'市场管理部'},{rowId:'61',deptName:'董事会办公室'}]"; var dataObjects = eval(data); //一个不错的参考网站: http://stackoverflow.com/questions/170986/what-is-the-best-way-to-add-options-to-a-select-from-an-array-with-jquery function changesub(){ $('#projectForm_project_superDepartment_rowId option').remove(); for(var i=0;i<dataObjects.length; i++){ $(new Option(dataObjects[i].deptName,dataObjects[i].rowId)).appendTo('#projectForm_project_superDepartment_rowId'); } }
--请选择--
赛尔网络有限公司
赛尔网络有限公司北京分公司
--请选择--
[/code]
不用解释这个代码的意思了吧。
在FireFox(Firefox/3.5.9)中执行没问题。
在IE(Version: 8.0.6001.18702)里没结果,也不挺不错。
难道是jQuery的一个bug?
这个怎么绕过去?
new Option(dataObjects[i].deptName,dataObjects[i].rowId)
jQuery中好像不这样写。
这样试试:
$("")
这跟Jquery没关系,这是因为不同浏览器对于dom接口的实现不同,建议采用jquery的API插入DOM节点