我有一个变量ddEmail,其值为
<option value="cp@cp.ljj" selected="">cp@cp.ljj</option>.
当我尝试使用
将其放入选择元素时document.getElementById("txtEmail").innerHTML = ddEmail;
然后在Firefox document.getElementById("txtEmail").innerHTML
中显示与ddEmail
相同的值,而在IE中则显示cp@cp.ljj</option>
有什么办法可以解决吗?
答案 0 :(得分:1)
正如您所发现的那样,您无法可靠地使用innerHTML
来设置现有select
的选项。
通过select
的{{1}}属性的最佳方式:
options
请注意,由于历史原因,它是var option = new Option("cb@cb.ljj", "cb@cb.ljj");
// Option text --------^ ^---- option value
option.selected = true;
document.getElementById("txtEmail").options.add(option);
,而不是add
。 push
适用于很多浏览器,但不适用于所有浏览器。
另请注意,上述假设push
中没有选项,或者您只想添加此选项,而不是替换已存在的所有选项。如果要删除以前的选项:
select