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

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

and

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

但两者都返回空字符串。


当前回答

我知道这是一个非常老的帖子,我可能应该为这个可怜的复活而被鞭打,但我想我将分享几个非常有用的小JS片段,我在我的武器库中使用每个应用程序…

如果输入:

$("#selector option:selected").val() // or
$("#selector option:selected").text()

是老了,尝试添加这些小松脆饼到你的全局*.js文件:

function soval(a) {
    return $('option:selected', a).val();
}
function sotext(a) {
    return $('option:selected', a).text();
}

然后写soval("#selector");或sotext(“#选择器”);相反!如果将两者结合并返回一个包含值和文本的对象,那就更好了!

function so(a) {
    my.value = $('option:selected', a).val();
    my.text  = $('option:selected', a).text();
    return my;
}

它为我节省了大量宝贵的时间,尤其是在表单较多的应用程序上!

其他回答

要从下拉列表中获取jquery值,你只需使用下面的函数just sent id并获得所选值:

function getValue(id){
    var value = "";
    if($('#'+id)[0]!=undefined && $('#'+id)[0]!=null){
        for(var i=0;i<$('#'+id)[0].length;i++){
            if($('#'+id)[0][i].selected == true){
                if(value != ""){
                    value = value + ", ";
                }
                value = value + $('#'+id)[0][i].innerText;
            }
        }
    }
    return value;
}

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

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>

试试这个:

 $('#dropDownId option').filter(':selected').text();     

 $('#dropDownId option').filter(':selected').val();

对于所选文本的使用:

value: $('#dropDownId :selected').text();

对于所选值的使用:

value: $('#dropDownId').val();