无法使用JavaScript获取下拉框中的选定值

无法使用JavaScript获取下拉框中的选定值,javascript,html,Javascript,Html,在中,描述了如何使用JavaScript从下拉框中获取所选值。我一直在尝试按照该线程中的说明进行操作,但未能使其正常工作 这里有一个我正在尝试做的最小(非工作)示例。代码应该从下拉框中打印第二个选项的值,但我在Chrome的JavaScript控制台uncaughtTypeError中得到以下错误:无法读取第11行null的属性“options”(即,当我定义第二个变量时) 一个 两个 三 var test=document.getElementById(“下拉框”); var testVa

在中,描述了如何使用JavaScript从下拉框中获取所选值。我一直在尝试按照该线程中的说明进行操作,但未能使其正常工作

这里有一个我正在尝试做的最小(非工作)示例。代码应该从下拉框中打印第二个选项的值,但我在Chrome的JavaScript控制台
uncaughtTypeError中得到以下错误:无法读取第11行null的属性“options”(即,当我定义第二个变量时)


一个
两个
三

var test=document.getElementById(“下拉框”); var testValue=test.options[test.selectedIndex].value; document.getElementById('message').innerHTML=testValue;
您忘了给您的
一个
id
属性

<html>
  <body>
    <select id='a_drop_down_box' name='a_drop_down_box'>
        <option value='1'>One</option>
        <option value='2' selected='selected'>Two</option>
        <option value='3'>Three</option>
    </select>
    <p id='message'></p>
    <script type="text/javascript">
        var test = document.getElementById("a_drop_down_box");
        var testValue = test.options[test.selectedIndex].value;
        document.getElementById('message').innerHTML=testValue;
    </script>
  </body>
</html>

一个
两个
三

var test=document.getElementById(“下拉框”); var testValue=test.options[test.selectedIndex].value; document.getElementById('message').innerHTML=testValue;
您忘了给您的
一个
id
属性

<html>
  <body>
    <select id='a_drop_down_box' name='a_drop_down_box'>
        <option value='1'>One</option>
        <option value='2' selected='selected'>Two</option>
        <option value='3'>Three</option>
    </select>
    <p id='message'></p>
    <script type="text/javascript">
        var test = document.getElementById("a_drop_down_box");
        var testValue = test.options[test.selectedIndex].value;
        document.getElementById('message').innerHTML=testValue;
    </script>
  </body>
</html>

一个
两个
三

var test=document.getElementById(“下拉框”); var testValue=test.options[test.selectedIndex].value; document.getElementById('message').innerHTML=testValue;
下拉列表的
名称
属性是“一个下拉框”-您在调用它时认为这是它的
id

任何时候出现“…of undefined”错误,都意味着尚未找到您认为正在处理的对象(或元素)。所以,在想为什么会发生错误之前,一定要确认这一点。在您的情况下,您本可以:

alert(test); //undefined - no element found with that ID

下拉列表的
name
属性是“一个下拉框”-您在调用它时认为这是它的
id

任何时候出现“…of undefined”错误,都意味着尚未找到您认为正在处理的对象(或元素)。所以,在想为什么会发生错误之前,一定要确认这一点。在您的情况下,您本可以:

alert(test); //undefined - no element found with that ID
您是否注意到尚未为所选项目定义id

name
属性用于标识使用表单发送的请求的表单元素。您应该使用一个id从dom中检索它

或者,如果select驻留在表单中,则可以使用:

document.getElementById("myForm").elements["a_drop_down_box"];
您是否注意到尚未为所选项目定义id

name
属性用于标识使用表单发送的请求的表单元素。您应该使用一个id从dom中检索它

或者,如果select驻留在表单中,则可以使用:

document.getElementById("myForm").elements["a_drop_down_box"];

您忘记将id添加到选择标记

var e = document.getElementById("a_drop_down_box");
var strUser = e.options[e.selectedIndex].value;
将返回2。如果需要两个
,请执行以下操作:

var e = document.getElementById("a_drop_down_box");
var strUser = e.options[e.selectedIndex].text;
下面是一个简单的例子

您忘记将id添加到选择标记中

var e = document.getElementById("a_drop_down_box");
var strUser = e.options[e.selectedIndex].value;
将返回2。如果需要两个
,请执行以下操作:

var e = document.getElementById("a_drop_down_box");
var strUser = e.options[e.selectedIndex].text;
下面是一个简单的例子