“旧浏览器”中的HTML select.value

时间:2014-05-15 09:00:41

标签: javascript html html-select

更新

不幸的是,我通过谈论.value属性引起了一些混淆,但随后要求在浏览器中提供任何功能支持。

事后看来,我想我现在需要的是知道.value是否“安全”使用,因此这就是我接受@ BeatAlex答案的原因(因为他们付出了努力来实际测试在多个浏览器上。


原始问题

使用javascript,the accepted way获取/设置<option>中所选<select>的值正在使用.value属性。

多年来我没有使用.value属性,因为我被告知“旧浏览器”不支持它。相反,我使用长形式......

dd.options[dd.selectedIndex].value;

但我刚做了一些研究,我找不到任何对哪个“旧浏览器”这种影响的引用。例如this quirksmode article甚至提到“旧浏览器”,但没有提供任何更多信息。

哪些“旧浏览器”在.value元素上没有<select>属性?在主流浏览器中何时可以使用特定功能时,是否存在某个参考?

注意:遗憾的是,由于系统上使用了旧的第三方组件,jQuery目前无法使用

2 个答案:

答案 0 :(得分:5)

.value适用于Windows XP中支持的大多数最旧的浏览器。

<select id="select">
  <option value="Hello1">1</option>
  <option value="Hello2">2</option>
  <option value="Hello3">3</option>
  <option value="Hello4">4</option>
  <option value="Hello5">5</option>
</select>

JavaScript的:

var id = document.getElementById("select");

id.onchange = function(){
 alert(this.value);
}

这适用于:

(全部从Windows XP运行)

  • IE6

  • Firefox 3.0

  • Safari 4.0

  • Chrome 14.0

  • Opera 10.6

这就是Browserstack可以追溯到的。

答案 1 :(得分:2)

似乎我们需要转到IE 3才能找到不支持value元素的select属性的浏览器。我发现a problem description说:“我在IE3.0.2中获取所选选项的值时遇到了一些麻烦。以下[访问value属性的代码]适用于所有类型的Netscape和IE 4“并引用IE 3错误消息”值不是对象“。

这意味着在实践中我们现在可以将value视为普遍支持。