使用jQuery从下拉列表(选择框)中获取选定的文本

如何从jQuery中的下拉列表中获取选定的文本(不是选定的值)?

2273238 次浏览

试试这个:

$("#myselect :selected").text();

对于ASP.NET下拉列表,您可以使用以下选择器:

$("[id*='MyDropDownId'] :selected")
$("#yourdropdownid option:selected").text();
var someName = "Test";
$("#<%= ddltest.ClientID %>").each(function () {$('option', this).each(function () {if ($(this).text().toLowerCase() == someName) {$(this).attr('selected', 'selected')};});});

这将帮助您找到正确的方向。如果您需要进一步的帮助,请告诉我。

$("option:selected", $("#TipoRecorde")).text()

$("#DropDownID").val()将给出选定的索引值。

如果您已经在变量中提供了下拉列表,那么这对我有用:

$("option:selected", myVar).text()

这个问题的其他答案帮助了我,但最终jQuery论坛线程$(this+"选项:选中"). attr("rel")选项在IE中不起作用帮助最大。

更新:修复了上面的链接

例如,这里发布的答案,

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

对我不起作用,但这确实:

$('#yourdropdownid').find('option:selected').text();

它可能是jQuery的旧版本。

对于选定项目的文本,请使用:

$('select[name="thegivenname"] option:selected').text();

对于选定项的值,请使用:

$('select[name="thegivenname"] option:selected').val();
$("select[id=yourDropdownid] option:selected").text()

这个很好用

这对我有用:

$('#yourdropdownid').find('option:selected').text();

jQuery版本:1.9.1

对于那些使用SharePoint列表并且不想使用长生成id的人,这将起作用:

var e = $('select[title="IntenalFieldName"] option:selected').text();
 $("#selectID option:selected").text();

而不是#selectID,您可以使用任何jQuery选择器,例如.selectClass使用class。

如留档这里所述。

选择器适用于<选项>元素。它不适用于复选框或单选输入;对它们使用:checked

. text()留档这里

获取匹配元素集中每个元素的组合文本内容,包括它们的后代。

因此,您可以使用.text()方法从任何超文本标记语言元素中获取文本。

请参阅留档以获得更深入的解释。

$("#dropdownID").change(function(){alert($('option:selected', $(this)).text());});

用途:

('#yourdropdownid').find(':selected').text();

各种方式

1. $("#myselect option:selected").text();
2. $("#myselect :selected").text();
3. $("#myselect").children(":selected").text();
4. $("#myselect").find(":selected").text();

在兄弟姐妹的情况下

<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()
$('#id').find('option:selected').text();

用这个

const select = document.getElementById("yourSelectId");
const selectedIndex = select.selectedIndex;const selectedValue = select.value;const selectedText = select.options[selectedIndex].text;

然后在selectedValueselectedText中获取选定的值和文本。

这项工作对我来说:

$("#city :selected").text();

我正在使用jQuery 1.10.2

这对我有用

$("#dropdownid").change(function() {alert($(this).find("option:selected").text());});

如果元素是动态创建的

$(document).on("change", "#dropdownid", function() {alert($(this).find("option:selected").text());});

以下内容为我工作:

$.trim($('#dropdownId option:selected').html())

在jQuery中下拉/选择更改事件中选择文本和选定值

$("#yourdropdownid").change(function() {console.log($("option:selected", this).text()); //textconsole.log($(this).val()); //value})

对于获取选定的值使用

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

要获取选定的项目文本,请使用以下行:

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

$(function () {alert('.val() = ' + $('#selectnumber').val() + '  AND  html() = ' + $('#selectnumber option:selected').html() + '  AND .text() = ' + $('#selectnumber option:selected').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">one</option><option value="2">two</option><option value="3">three</option><option value="4">four</option></select>
</div></form></body></html>

点击查看输出屏幕

var e = document.getElementById("dropDownId");var div = e.options[e.selectedIndex].text;

如果您希望将结果作为列表,请使用:

x=[];$("#list_id").children(':selected').each(function(){x.push($(this).text());})

尝试:

$var = jQuery("#dropdownid option:selected").val();alert ($var);

或者要获取选项的文本,请使用text()

$var = jQuery("#dropdownid option:selected").text();alert ($var);

更多信息:

对于多选:

$("#yourdropdownid :selected").map(function(i, v) { return $.trim($(v).text()); }
$("#dropdownid option:selected").text();

如果你用asp.net写作

<Asp:dropdownlist id="ddl" runat="Server" />

那你应该用

$('#<%=ddl.Clientid%> option:selected').text();

只需尝试以下代码。

var text= $('#yourslectbox').find(":selected").text();

它返回所选选项的文本。

只需添加以下行

$(this).prop('selected', true);

将. att替换为. prop,它适用于所有浏览器。

$("#dropdown").find(":selected").text();

$("#dropdown :selected").text();

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

$("#dropdown").children(":selected").text();

试试看

dropdown.selectedOptions[0].text

function read() {console.log( dropdown.selectedOptions[0].text );}
<select id="dropdown"><option value="1">First</option><option value="2">Second</option></select><button onclick="read()">read</button>

这个代码对我有用。

$("#yourdropdownid").children("option").filter(":selected").text();
$("#dropdownid").change(function(el) {console.log(el.value);});

或者你可以用这个

$("#dropdownid").change(function() {console.log($(this).val());});