获取当前选定的选项

时间:2012-01-10 19:24:28

标签: javascript jquery html

<select id="sel">
    <option id="1">aa</option>
    <option id="2">bb</option>
    <option id="3">cc</option>
</select>

$("#sel").change(function(){
   alert($(this).children().attr('id'))
})

LIVE: http://jsfiddle.net/cxWVP/

如何获取当前所选的选项ID?现在总是告诉我id =“1”。

9 个答案:

答案 0 :(得分:20)

$('#sel').change(function(){
   alert($(this).find('option:selected').attr('id'));
});

应该有用。

答案 1 :(得分:20)

http://jsfiddle.net/cxWVP/1/

$("#sel").change(function(){
   alert( this.options[this.selectedIndex].id );
})

答案 2 :(得分:11)

<option>代码应具有value属性。选择一个后,您可以使用$("#sel").val()获取它的值。

<select id="sel">
    <option value="1">aa</option>
    <option value="2">bb</option>
    <option value="3">cc</option>
</select>

$("#sel").change(function(){
   alert($(this).val())
});

DEMO:http://jsfiddle.net/yPYL5/

答案 3 :(得分:4)

http://jsfiddle.net/ugUYA/

要在select元素中获取所选选项,可以使用selectedIndex,然后可以使用options数组来获取所选选项对象

$("#sel").change(function(){
   alert( this.options[this.selectedIndex].id )
})

答案 4 :(得分:3)

试试这个

$("#sel").find('option:selected').attr('id');

理想情况下,您应该对选项标记使用value属性,并使用val方法从下拉列表元素中获取所选值。 $("#sel").val();

答案 5 :(得分:1)

$(this).find('option:selected').attr('id')

答案 6 :(得分:1)

试试这个:

$('select:#idSelect').val()

答案 7 :(得分:0)

将id属性更改为value,然后使用.val()

<select id="sel">
    <option value ="1">aa</option>
    <option value ="2">bb</option>
    <option value ="3">cc</option>
</select>


var selectedValue = $("#sel").val();

答案 8 :(得分:0)

jquery:选择过滤器是否有效。 像这样......

$("#sel:selected").each(function(){
   alert($(this).attr('id'))
})