JavaScript 获取 Select 下拉框选中值的方法与兼容性处理

作者:页面旅途

时间:2026-10-24

浏览:443

本文介绍如何在JavaScript中获取Select下拉框的选中值。通过selectedIndex获取索引,进而获取Option对象。重点解析了当Option未定义value属性时,不同浏览器(如IE与Firefox/Safari)的行为差异,并提供兼容代码以正确返回value或text。

文章目录
  1. 若Select元素内的所有Option均未设置selected属性,浏览器默认选中列表中的第一项。
  2. 利用select.selectedIndex属性,可以获取当前被选中Option元素的索引值。
  3. 通过select.options[select.selectedIndex]表达式,即可定位并获取到具体的Option DOM对象。
  4. 对于带有value属性的Option元素(例如<option selected="selected" value="value3">text3</option>),可通过option.value属性获取其value值(即value3),或通过option.text属性获取其显示文本(即text3)。
  5. 当Option元素未显式定义value属性时,存在浏览器兼容性问题:IE浏览器中option.value无法获取有效值,而Safari、Opera及Firefox等浏览器仍可通过option.value获取到与option.text相同的值。
  6. 为确保兼容性,可通过检查option.attributes.value是否存在且specified属性为true,来判断Option是否明确定义了value属性。

JavaScript 获取 Select 下拉框选中值的方法与兼容性处理

基于上述逻辑,获取Select当前值的完整脚本实现如下。

代码如下:

var getSelectValue = funtion(select) {
var idx = select.selectedIndex,
option,
value;
if (idx > -1) {
option = select.options[idx];
value = option.attributes.value;
return (value && value.specified) ? option.value : option.text);
} 
return null;
}

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章