如何使用jQuery获得下拉框的选定值? 我试着用

var value = $('#dropDownId').val();

and

var value = $('select#dropDownId option:selected').val();

但两者都返回空字符串。


当前回答

$("#selector <b>></b> option:selected").val()

Or

$("#selector <b>></b> option:selected").text()

以上代码对我来说工作得很好

其他回答

use

$('#dropDownId').find('option:selected').val()

这应该工作:)

我知道这是旧的,但我想我更新了一个更最新的答案

$( document ).on( 'change', '#combo', function () {
var prepMin= $("#combo option:selected").val();
 alert(prepMin);
});

我希望这对你们有帮助

还有一个经过测试的例子:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
    $('#bonus').change(function() {
    alert($("#bonus option:selected").text());
  });  
});
</script>
</head>

<body>
<select id="bonus">
<option value="1">-$5000</option>
<option value="2">-$2500</option>
<option value="3">$0</option>
<option value="4">$1</option>
<option value="5">We really appreciate your work</option>
</select>
</body>
</html>

对于正常页面加载下拉列表

  $("#dropDownId").on('change',function(){
     var value=$(this).val();
     alert(value);
  });

确保保持id的唯一性

  $(document).on('change','#dropDownId',function(){
    var value=$(this).val();
    alert(value)
  });

function fundrp(){ var text_value = $("#drpboxid option:selected").text(); console.log(text_value); var val_text = $("#drpboxid option:selected").val(); console.log(val_text); var value_text = $("#drpboxid option:selected").attr("value") ; console.log(value_text); var get_att_value = $("#drpboxid option:selected").attr("id") console.log(get_att_value); } <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script> <select id="drpboxid"> <option id="1_one" value="one">one</option> <option id="2_two" value="two">two</option> <option id="3_three" value="three">three</option> </select> <button id="btndrp" onclick="fundrp()">Tracking Report1234</button>