Как я могу получить выделенный текст (не выбранное значение) из раскрывающегося списка в JQuery?
$("#yourdropdownid option:selected").text();
$("#yourdropdownid").children("option").filter(":selected").text()
поскольку is () возвращает логическое значение того, соответствует ли объект селектору или нет. is("selected").text()
возвращаетTypeError: Object false has no method 'text'
$('select').children(':selected')
самый быстрый способ: jsperf.com/get-selected-option-textПопробуй это:
$("#myselect :selected").text();
Для раскрывающегося списка ASP.NET вы можете использовать следующий селектор:
$("[id*='MyDropDownId'] :selected")
("#ct0001yourdropdownid)
ID
свой элемент управления, а если нет, то на основании индекса их местонахождения на текущем уровне дерева и т. Д.). )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 + "option: selected"). 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()
Это отлично работает
change
мероприятии я теперь могу использовать, $(this).find('option:selected').text()
чтобы получить текст. $(this).children(':selected').text()
также будет работать. @ Timo002Для тех, кто использует списки SharePoint и не хочет использовать длинный сгенерированный идентификатор, это будет работать:
var e = $('select[title="IntenalFieldName"] option:selected').text();
$("#selectID option:selected").text();
Вместо этого #selectID
вы можете использовать любой селектор jQuery, например, .selectClass
используя класс.
Как указано в документации здесь .
Селектор: selected работает для элементов <option>. Это не работает для флажков или радиовходов; использовать :checked
для них.
.text () Согласно документации здесь .
Получите объединенное текстовое содержимое каждого элемента в наборе соответствующих элементов, включая их потомков.
Таким образом, вы можете взять текст из любого элемента HTML, используя .text()
метод.
Обратитесь к документации для более глубокого объяснения.
$("#dropdownID").change(function(){
alert($('option:selected', $(this)).text());
});
$(this)
после моего вызова AjaxИспользование:
('#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;
Тогда вы получите выбранное значение и текст внутри selectedValue
и selectedText
.
Эта работа для меня:
$("#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()); //text
console.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;
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();
возвращает текст выбранной опции.