这是一个简单的问题,但我找不到任何参考,所以在这里。
假设我有一个选择元素:
<select id="sel">
<option value="1">1</option>
<option value="2">2</option>
</select>
现在我想得到它选择的选项的value
. 大多数情况下,我看到这种片段被使用:
var sel = document.getElementById('sel');
console.log( sel.options[sel.selectedIndex].value ); //1
效果很好。但是,我发现select
元素也有一个 value 属性:
console.log( sel.value ); //1
请参阅这两个示例的小提琴。
第二种形式不仅简单得多,而且可以一直使用到 IE6(是的,我确实对此进行了测试,这里是IE6 友好版本)。
为什么第一种方法被广泛接受是有原因的吗?第二种方法是否存在一些不兼容或极端情况问题?
附言。我的“最常用方法”论文主要基于个人经验,但作为参考,Get selected value in dropdown list using JavaScript? 中最受好评的两个答案?使用第一种方法。