21

Javascript 中动态创建 DOM 选项元素的首选方式是什么?我发现了在实际代码中使用的 Option 构造函数和 createElement 变体,如下所示:

var option = new Option(text, value);

还有这个:

var option = document.createElement('option');
option.text = text;
option.value = value;

这些方法是否有任何缺点/兼容性问题?此外,由于某些原因,是否有任何其他方法可以动态创建比上述更受欢迎的选项?

4

2 回答 2

12

我所知道的两种方法之间没有区别。使用Option构造函数可以方便地设置选项的值和文本,但您可以使用valuetext属性来做同样的事情。

可能有innerHTML办法,但是 IE8 和更早版本在这方面失败了......

于 2013-04-22T10:11:36.820 回答
1

例如,我注意到在 IE9 下使用 new Option() 不能很好地工作,而它在 IE10 和 IE11 中工作。我最近回到原始代码并恢复有人使用 document.createElement('option') 返回所做的更改,以便 IE9 正常工作。

于 2014-11-12T16:25:24.783 回答