如何获得所选期权的价值

时间:2011-06-17 13:12:00

标签: javascript html

    function changeDay(monthSelect){
    dayVal = day.selected.value;
    //secili ayi al
    optVal = monthSelect.selected.value;
    if(optVal=='Şubat' && dayVal > 29){
        modifyDay(29);
    }
}

我收到第dayVal = day.selected.value行的错误消息:

  

未捕获的TypeError:无法读取未定义的属性“值”

我如何达到所选期权的价值?

2 个答案:

答案 0 :(得分:2)

您可以使用select元素的“selectedIndex”属性和“options”数组:

var val = monthSelect.options[monthSelect.selectedIndex].value;

选项本身就是从数组中得到的:

var theOption = monthSelect.options[monthSelect.selectedIndex];

如果您正在处理旧版本的IE(可能是所有版本;我很久以前就停止了对此实验:-),这是唯一安全的方法,但有些浏览器的确具有“价值”属性select元素会相应地跟踪所选的选项值。

答案 1 :(得分:0)

获取价值的最简单方法:

day.value

它适用于所有浏览器,甚至IE 6

演示:http://jsfiddle.net/roberkules/8xwhG/