让我说我的列表看起来像这样:
<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方式”这样做或者我应该坚持上述?
提前感谢您的帮助。
答案 0 :(得分:3)
var selected = $("#id option:selected");
var value = selected.val();
答案 1 :(得分:1)
val()
功能仅适用于输入元素(input
,select
,textarea
,button
)。 option
元素不是输入元素。
如前所述,您需要将其作为“普通”元素处理,通过option.attr('value')
获取。
答案 2 :(得分:0)
我认为这应该有效:
$("#id").attr("value")
...但是我使用jQuery已经有一段时间了。
答案 3 :(得分:0)
我假设你将触发一个事件处理程序来捕获这些信息,对吗?如果是这样,我将如何访问所选值的“id”和“name”组件:
$('select').change(function () {
var id = $(":selected", this).val();
var name = $(":selected", this).text();
});
` 行动here中有一段此代码的演示。