如何使用JavaScript在select标签上获取所选值?

时间:2013-07-05 04:31:32

标签: javascript html-select

我有一个像这样的选择语句:

<select onchange="change_session()" name="select_path" id="select_path">
    <option name="sserver_id" id="select_path" selected value="{{ i.id }}">{{ default_server_id }}</option>
    {% for i in all_server_id %}
        <option name="server_id" id="select_path" value="{{ i.id }}">{{ i.session_name }}</option>                 
    {% endfor %}
    </select>

第一个选项显示顶部的default_id,第二个选项列出所有选项。用户可以相应地更改选项并进行处理,使用AJAX发送到服务器。现在我想找出哪个server_id用户选择了这样的用户:

var serverId=document.getElementById('server_id');

如何获得所选选项?

3 个答案:

答案 0 :(得分:5)

首先,您需要从<option>标记中删除'name'和'id'属性。您不能在一个页面上有重复的ID。

接下来,您可以使用它来通过id获取元素:

var selected = document.getElementById('select_path').value;

答案 1 :(得分:3)

试试这个..

<select onchange="change_session()" name="select_path" id="select_path">
    <option  selected value="{{ i.id }}">{{ default_server_id }}</option>
    {% for i in all_server_id %}
        <option  value="{{ i.id }}">{{ i.session_name }}</option>                 
    {% endfor %}
</select>

javascript函数的代码

var serverId=document.getElementById('select_path').value;

答案 2 :(得分:0)

  

使用此

<select id="MySelectOption"> <option value="1">test1</option> <option value="2" selected="selected">test2</option> <option value="3">test3</option> </select>

  

javascript

<script> var e = document.getElementById("MySelectOption"); var strUser = e.options[e.selectedIndex].value; </script>

If you would like to get the actual text from the selected option do this:

<script> var e = document.getElementById("MySelectOption"); var strUser = e.options[e.selectedIndex].text; </script>