使用jQuery获取下拉菜单项的选定值

如何使用jQuery获得下拉框的选定值?< br > 我尝试使用

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

而且

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

但两者都返回空字符串。

1346246 次浏览

对于单个select dom元素,获取当前选择的值:

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

获取当前选定的文本:

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

您是否为选择元素提供了id?

<select id='dropDownId'> ...

你的第一句话应该有用!

var value = $('#dropDownId:selected').text()

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

$(document).ready(function(){
$('#button1').click(function(){
alert($('#combo :selected').text());
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="combo">
<option value="1">Test 1</option>
<option value="2">Test 2</option>
</select>
<input id="button1" type="button" value="Click!" />

试试这个jQuery,

$("#ddlid option:selected").text();

或者这个javascript,

 var selID=document.getElementById("ddlid");
var text=selID.options[selID.selectedIndex].text;

如果你需要访问值而不是文本,那么尝试使用val()方法而不是text()方法。

看看下面的小提琴链接。

__abc0 | __abc1

这样就可以了

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

试试这个

$("#yourDropdown option:selected").text();

html中为你的下拉控件生成的id将是动态的。所以使用完整的id $('ct100_<Your control id>').val().它将工作。

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

<!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').find('option:selected').val()

这应该工作:)

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

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

我希望这对你们有帮助

$("select[id$=dropDownId]").val()
  • 试试这个

使用这些代码中的任何一个

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

$('#dropDownId').text();

我知道这是一个非常老的帖子,我可能应该为这个可怜的复活而被鞭打,但我想我将分享几个非常有用的小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("#selector");就可以了!将两者结合起来,返回一个同时包含valuetext!

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

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

这将提醒所选的值。 JQuery代码…< / p >

$(document).ready(function () {


$("#myDropDown").change(function (event) {
alert("You have Selected  :: "+$(this).val());
});
});

HTML代码…

<select id="myDropDown">
<option>Milk</option>
<option>Egg</option>
<option>Bread</option>
<option>Fruits</option>
</select>

或者你可以试试:

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

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

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

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

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

这是可行的

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

对于所选文本的使用:

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

对于所选值的使用:

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

你可以使用以下任何一种:

$(document).on('change', 'select#dropDownId', function(){


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


//OR


var value = $(this).val();


});

试试这个,它得到的值:

$('select#myField').find('option:selected').val();

要从下拉列表中获取jquery值,只需使用下面的函数发送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;
}

你需要这样放。

$('[id$=dropDownId] option:selected').val();
$("#dropDownId").val('2');
var SelectedValue= $("#dropDownId option:selected").text();
$(".ParentClass .select-value").html(SelectedValue);




<p class="inline-large-label button-height ParentClass" >
<label for="large-label-2" class="label">Country <span style="color: Red;">*</span><small></small></label>
<asp:DropDownList runat="server" ID="dropDownId " CssClass="select" Width="200px">
</asp:DropDownList>
</p>

试试这个:

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


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

使用下面的方法在页面加载中获取所选值:

$(document).ready(function () {
$('#ddlid').on('change', function () {
var value = $('#ddlid :selected').text();
alert(value);`
});
});

您可以通过使用以下代码来实现这一点。

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

如果您想从选择列表的选项中获取所选值。这样就可以了。

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

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

  $("#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>

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

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;
}

HTML:

<select class="form-control" id="SecondSelect">
<option>5<option>
<option>10<option>
<option>20<option>
<option>30<option>
</select>

JavaScript:

var value = $('#SecondSelect')[0].value;