jQuery获取选定的选项值(不是文本,而是属性的值)
好的,我有这个代码:
<select name="selector" id="selector"> <option value="1">Option 1</option> <option value="2">Option 2</option> </select>
我想获得select的选项的价值。 例如:select“选项2”,其值为“2”。 '2'是我需要得到的价值,而不是'选项2'。
使用.val来获取所选选项的值。 见下文,
$('select[name=selector]').val()
我只是想分享我的经验,我的名声还不足以发表评论。
为了我,
$('#selectorId').val()
返回null。
我不得不使用
$('#selectorId option:selected').val()
$('select').change(function() { console.log($(this).val()) });
jsFiddle的例子
.val()
将获得该值。
你需要添加一个ID到你的select。 然后:
$('#selectorID').val()
你可以使用jquery
如下
脚本
$('#IDOfyourdropdown').change(function(){ alert($(this).val()); });
FIDDLE在这里
对于这样的select
<select class="btn btn-info pull-right" id="list-name" style="width: auto;"> <option id="0">CHOOSE AN OPTION</option> <option id="127">John Doe</option> <option id="129" selected>Jane Doe</option>
…你可以通过这种方式得到id:
$('#list-name option:selected').attr('id');
或者,您可以使用价值,并以简单的方式得到它…
<select class="btn btn-info pull-right" id="list-name" style="width: auto;"> <option value="0">CHOOSE AN OPTION</option> <option value="127">John Doe</option> <option value="129" selected>Jane Doe</option>
喜欢这个:
$('#list-name').val();
我的一个选项没有值: <option>-----</option>
。 我试图使用if (!$(this).val()) { .. }
但是我得到了奇怪的结果。 原来,如果你的<option>
元素没有value
属性,它会返回里面的文本而不是空string。 如果你不想让val()
为你的选项返回任何东西,确保添加value=""
。
尝试这个:
$(document).ready(function(){ var data= $('select').find('option:selected').val(); });
要么
var data= $('select').find('option:selected').text();
看看这个例子:
<select class="element select small" id="account_name" name="account_name"> <option value="" selected="selected">Please Select</option> <option value="paypal" >Paypal</option> <option value="webmoney" >Webmoney</option> </select> <script type="text/javascript"> $(document).ready(function(){ $('#account_name').change(function(){ alert($(this).val()); }); }); </script>
$('#selectorID').val();
要么
$('select[name=selector]').val();
要么
$('.class_nam').val();