javascript - plugin - jquery работа с select




Получить выделенный текст из раскрывающегося списка(выберите поле) с помощью jQuery (20)

Как получить выделенный текст (не выбранное значение) из раскрывающегося списка в 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()

Выберите «Текст» и выбранное значение в раскрывающемся меню / выберите событие изменения в jQuery

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

Для получения выбранного значения используйте

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

и для получения выбранного текста элемента используйте эту строку:

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

Для текста выбранного элемента используйте:

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

Для значения выбранного элемента используйте:

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

Если вы хотите, чтобы результат был списком, используйте:

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

Если у вас уже есть раскрывающийся список, доступный в переменной, это то, что работает для меня:

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

Другие ответы на этот вопрос помогли мне, но, в конечном счете, форум jQuery thread $ (this + "option: selected"). Выбранная опция attr ("rel") не работает в IE .

Обновление: исправлена ​​ссылка выше


Ответы, размещенные здесь, например,

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

не работал для меня, но это делало:

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

Возможно, это более старая версия jQuery.


Пожалуйста, используйте это

var listbox = document.getElementById("yourdropdownid");
var selIndex = listbox.selectedIndex;
var selValue = listbox.options[selIndex].value;
var selText = listbox.options[selIndex].text;   

Затем, пожалуйста, сообщите «selValue» и «selText». Вы получаете выделенное выпадающее значение и текст


Пытаться:

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

Или, чтобы получить текст опции, используйте text() :

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

Больше информации:


Различные пути

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

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

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

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

Это работает для меня

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

Если элемент создается динамически

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

Это работает для меня:

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

Версия jQuery : 1.9.1


$("#DropDownID").val() даст выбранное значение индекса.


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


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

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

если вы используете asp.net и пишите

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

то вы должны использовать

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

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

$("select[id=yourDropdownid] option:selected").text()

Это прекрасно работает


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

var someName = "Test";

$("#<%= ddltest.ClientID %>").each(function () {
    $('option', this).each(function () {
        if ($(this).text().toLowerCase() == someName) {
            $(this).attr('selected', 'selected')
        };
    });
});

Это поможет вам в правильном направлении. Выше код полностью протестирован, если вам нужна дополнительная помощь, сообщите мне.





jquery-selectors