这是一个简单的问题,但我找不到任何参考资料,所以我来回答一下。
假设我有一个选择元素:
现在我想获取它所选选项的
假设我有一个选择元素:
<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
请查看包含两个示例的fiddle。
第二种方法不仅更简单,而且可以在IE6上完美运行(没错,我实际测试过,这是兼容IE6的版本)。
第一种方法为什么被广泛接受?第二种方法是否存在不兼容或边角案例问题?
ps. 我的“最常用的方法”论点主要基于个人经验,但至于参考资料,获取下拉列表中所选值的JavaScript方法?中得票最高的两个答案都使用了第一种方法。
HTMLInputElement
,但未能找到HTMLSelectElement
。那就是我一直在寻找的东西。 - Fabrício MattéselectedIndex
更常用?从我现在阅读的参考资料来看,两者是等价的。 - Fabrício Matté