如何从jQuery的下拉列表中获取所选文本(而不是所选值)?
当前回答
var someName = "Test";
$("#<%= ddltest.ClientID %>").each(function () {
$('option', this).each(function () {
if ($(this).text().toLowerCase() == someName) {
$(this).attr('selected', 'selected')
};
});
});
这将帮助你找到正确的方向。如果您需要进一步的帮助,请告诉我,上面的代码经过了充分测试。
其他回答
这里张贴的答案,例如,
$('#yourdropdownid option:selected').text();
对我来说没用,但这样做了:
$('#yourdropdownid').find('option:selected').text();
它可能是jQuery的旧版本。
在兄弟姐妹的情况下
<a class="uibutton confirm addClient" href="javascript:void(0);">ADD Client</a>
<input type="text" placeholder="Enter client name" style="margin: 5px;float: right" class="clientsearch large" />
<select class="mychzn-select clientList">
<option value="">Select Client name....</option>
<option value="1">abc</option>
</select>
/*jQuery*/
$(this).siblings('select').children(':selected').text()
$(函数(){alert('.val()='+$('#selectnumber').val()+'AND html()='+$('#selectnumber选项:selected').html()+'AND.text()=‘+$(‘#selectnumber选项:select').text(());});<script src=“https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js“></script><html xmlns=“http://www.w3.org/1999/xhtml"><head runat=“server”><title></title></head><body><form id=“form1”runat=“server”><div><select id=“selectnumber”><option value=“1”>一个</option><option value=“2”>两个</option><option value=“3”>三个</option><option value=“4”>四个</option></选择></div></form></body></html>
只需添加以下行
$(this).prop('selected', true);
将.att替换为.prop,它适用于所有浏览器。
使用此
const select = document.getElementById("yourSelectId");
const selectedIndex = select.selectedIndex;
const selectedValue = select.value;
const selectedText = select.options[selectedIndex].text;
然后在selectedValue和selectedText中获取所选值和文本。