2

我一直在 FF 中构建我的网站,只是意识到它在 IE 或 Chrome(即 Javascript)中不起作用。使用 IE 的 JS 调试器我发现它正在吐出以下错误:

SCRIPT5007: Unable to get value of the property 'value': object is null or undefined ...

对于以下代码:

var myvar = document.getElementById("selectboxid").value;

它在 FF 中运行良好,但在 IE 或 Chrome 中运行良好。

选择框的 HTML 如下所示:

<select name="selectboxid" id="selectboxid" size="1" autocomplete="off" tabindex="5" >
<option value="1">One</option>
<option value="2">Two</option>
...

难道我做错了什么?如果是这样,为什么它在 FF 中可以正常工作?

谢谢你的帮助。

4

1 回答 1

4

你可以使用这个:

var myvar = document.getElementById("selectboxid");
var selectedValue = myvar.options[myvar.selectedIndex].value; //This will get the selected value of the select box

实现这一点的示例:

<html>
<head>
    <title>sample</title>
</head>
<body>
    <select name="selectboxid" id="selectboxid" onchange="alertValue()" size="1" autocomplete="off" tabindex="5">
        <option value="1">One</option>
        <option value="2">Two</option>
        <option value="3">Three</option>
        <option value="4">Four</option>
    </select>
    <script type="text/javascript">
    function alertValue() //this function will only be called when the value of select changed.
    {
        var myvar = document.getElementById("selectboxid");
        var selectedValue = myvar.options[myvar.selectedIndex].value; //This will get the selected value of the select box
        alert(selectedValue);
    }
    </script>
</body>
</html>​
于 2012-10-25T00:25:51.343 回答