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

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

and

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

但两者都返回空字符串。


当前回答

或者你可以试试:

$("#foo").find("select[name=bar]").val();

我今天用它,它工作得很好。

其他回答

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

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

确保保持id的唯一性

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

如果你有一个以上的下拉尝试:

HTML:

<select id="dropdown1" onchange="myFunction(this)">
    <option value='...'>Option1
    <option value='...'>Option2
</select>
<select id="dropdown2" onchange="myFunction(this)">
    <option value='...'>Option1
    <option value='...'>Option2
</select>

JavaScript:

    function myFunction(sel) {
        var selected = sel.value;
    }
var value = $('#dropDownId:selected').text()

应该工作得很好,请看这个例子:

$(文档)时函数(){ $ (' # button1 ') .click(函数(){ 警报($ #组合:选择)。text ()); }); }); < script src = " https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js " > < /脚本> <选择id = "组合" > <option value="1">Test 1</option> . </option> . <option value="2">Test 2</option> . </option> . < /选择> <input id="button1" type="button" value="点击!"/>

在html中为你的下拉控件生成的id是动态的。因此使用完整的id $('ct100_<您的控件id>').val()。它会起作用的。

或者你可以试试:

$("#foo").find("select[name=bar]").val();

我今天用它,它工作得很好。