1.如果 select 元素下的所有 option 元素均没有指定 selected 属性,会默认选中第一个.
2.可以通过select.selectedIndex 获取到选中的 option 元素的索引.
3.可以通过select.options[select.selectedIndex]获取到选中的option元素。
4.option元素<option selected="selected" value="value3">text3</option>,可以通过option.value获得option元素的value属性值,即value3;可以通过option.text获得option元素内的文本,即text3.
5.如果option元素没有定义value属性,则IE中option.value无法获得,但Safari、Opera、FireFox依旧可以通过option.value获得,值同于option.text。
6.可以通过option.attributes.value && option.attributes.value.specified来判断option元素是否定义了value属性。
?
故,获得当前 select 元素值的脚本如下:
var getSelectValue = function(select) { ??? var idx = select.selectedIndex; ??? var? option; ? ? var? value; ??? if (idx > -1) { ??????? option = select.options[idx]; ??????? value = option.attributes.value; ??????? return (value && value.specified) ? option.value : option.text; ??? } ??? return null; } |
?
?
http://www.planabc.net/2010/03/27/how_to_get_select_element_value/