5

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

<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用户使用 JavaScript 选择的对象,如下所示:

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

如何获得选定的选项?

4

3 回答 3

7

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

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

var selected = document.getElementById('select_path').value;
于 2013-07-05T04:34:55.600 回答
4

尝试这个..

<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;
于 2013-07-05T04:46:12.137 回答
1

用这个

<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>
于 2014-03-26T05:48:47.480 回答