0

假设我的列表如下所示:

<select name="name" id="id">
    <option value="10176232332">David</option>
    <option value="10187232332">Sven</option>
    <option value="10202232332">Ololf</option>
    <option value="10219232323">Jan</option>
    <option value="10230232323">Gustaf</option>
</select>

使用 JQuery,我如何提取每个选项的值 - 例如:

<option value="10176232332">David</option>

其中 10176232332 是值。使用:

($("#id").val()) 

提取名称,而不是数字组合。使用regluar Javascript我会使用:

list.options[list.selectedIndex].value;

是否有这样做的“JQuery 方式”或者我应该坚持上述方式?

提前感谢您的帮助。

4

4 回答 4

3
var selected = $("#id option:selected");
var value = selected.val();
于 2009-11-08T20:16:54.697 回答
1

val()函数仅适用于输入元素 ( input, select, textarea, button)。该option元素不是输入元素。

如前所述,您需要将其作为“普通”元素处理,通过option.attr('value').

于 2009-11-08T20:19:38.687 回答
0

我认为这应该有效:

$("#id").attr("value")

...但是自从我使用 jQuery 以来已经有一段时间了。

于 2009-11-08T20:17:16.723 回答
0

我假设您将触发事件处理程序来捕获此信息,对吗?如果是这样,这里是我将如何访问选定值的“id”和“name”组件:

    $('select').change(function () { 
        var id = $(":selected", this).val();
        var name = $(":selected", this).text();
    });

` 这里有这个代码的演示

于 2009-11-08T20:28:49.563 回答