我在here上有一个脚本,可以在FF14和Chrome20中正常使用。
其中一部分在IE9中无效。
如果您在IE9中打开页面并将第一个下拉列表(综合搜索)更改为“Word TM”,则第二个下拉列表将变为空。
在其他浏览器中,行为是正确的,它会在选择菜单中添加两行。
知道为什么IE9不喜欢这个以及如何修复它?
感谢下面的评论,问题现已解决!
答案 0 :(得分:4)
您有一个ID为“report_options”的SELECT元素(z),并尝试使用innerHTML更改其选项。这在IE9中无效。使用z.options.remove(zeroBasedPosition)删除选项和z.options.add(OPTION),其中OPTION是由以下内容创建和添加的DOM元素:
var option = document.createElement("OPTION");
option.text = "your text";
option.value = "your value";
z.options.add(option);
答案 1 :(得分:3)
问题在于您在<option>
内创建<select>
元素的方式:
z.innerHTML="<option value='no' SELECTED>Not needed</option>...";
Internet Explorer始终存在<select>
元素和innerHTML
的问题(您只能使用它来清除所有选项,innerHTML = ""
)。向<select>
元素正确添加选项选项的唯一跨浏览器方法是使用其add
方法。