Jak mogę uzyskać wybrany tekst (nie wybraną wartość) z listy rozwijanej w jQuery?

2417
haddar 29 październik 2009, 15:02

29 odpowiedzi

Najlepsza odpowiedź
$("#yourdropdownid option:selected").text();
3849
rahul 29 październik 2009, 12:05

Spróbuj tego:

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

W przypadku rozwijanej ASP.NET możesz użyć następującego selektora:

$("[id*='MyDropDownId'] :selected")
271
kgiannakakis 29 październik 2009, 12:04

Odpowiedzi wysłane tutaj na przykład

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

Nie działał dla mnie, ale to zrobił:

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

Jest to prawdopodobnie starsza wersja jQuery.

219
Peter Mortensen 28 luty 2015, 08:52

Jeśli masz już dropdownlist dostępny w zmiennej, to właśnie działa dla mnie:

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

Pozostałe odpowiedzi na tym pytaniu pomogły mi, ale ostatecznie wątek forum jQuery $ (ta +" Opcja: wybrana opcja "). Wybrana opcja attr (" Rel ") nie działa w IE pomógł najbardziej .

Aktualizacja: Naprawiono powyższy link

105
Nouman Bhatti 12 maj 2016, 07:22

To działa dla mnie

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

Jeśli element stworzony dynamicznie

$(document).on("change", "#dropdownid", function() {
    alert($(this).find("option:selected").text());
});
69
Prabhagaran 1 sierpień 2017, 07:59
$("option:selected", $("#TipoRecorde")).text()
66
Muhammad Usman 17 styczeń 2012, 18:21

$("#DropDownID").val() da wybraną wartość indeksu.

55
Aziz Shaikh 14 listopad 2011, 09:34

To działa dla mnie:

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

JQUERY wersja: 1.9.1

55
Peter Mortensen 28 luty 2015, 08:56

Dla tekstu wybranego elementu, użyj:

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

Dla wartości wybranego elementu, użyj:

$('select[name="thegivenname"] option:selected').val();
42
Milap 29 czerwiec 2016, 12:02

Różne drogi

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

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

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

4. $("#myselect").find(":selected").text();
35
MaxEcho 3 sierpień 2014, 19:39
$("#dropdownID").change(function(){
  alert($('option:selected', $(this)).text());
});
31
124 1 luty 2014, 05:55

Użyj tego

const select = document.getElementById("yourSelectId");

const selectedIndex = select.selectedIndex;
const selectedValue = select.value;
const selectedText = select.options[selectedIndex].text;   

Następnie otrzymasz wybraną wartość i tekst wewnątrz selectedValue i selectedText.

31
Justin 22 listopad 2019, 14:30
var someName = "Test";

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

To pomoże ci uzyskać właściwy kierunek. Powyżej kodu jest w pełni przetestowany, jeśli potrzebujesz dalszej pomocy, daj mi znać.

28
Vivek 2 luty 2011, 12:28

Dla tych, którzy używają Listów SharePoint i nie chcesz korzystać z długiego wygenerowanego identyfikatora, to będzie działać:

var e = $('select[title="IntenalFieldName"] option:selected').text();
19
Peter Mortensen 21 marzec 2015, 13:56
 $("#selectID option:selected").text();

Zamiast #selectID możesz użyć dowolnego selektora jQuery, takich jak .selectClass za pomocą klasy.

Jak wspomniano w dokumentacji Tutaj.

The: Wybrany selektor działa na Opcję & GT; elementy. Nie działa dla pola wyboru lub wejść radiowych; Użyj dla nich :checked.

.Text () zgodnie z dokumentacją tutaj.

Uzyskaj łączny zawartość tekstu każdego elementu w zestawie dopasowanych elementów, w tym ich potomków.

Możesz więc wziąć tekst z dowolnego elementu HTML za pomocą metody {x0}}.

Odnoszą się do dokumentacji dla głębszego wyjaśnienia.

17
Peter Mortensen 28 luty 2015, 08:58
$("select[id=yourDropdownid] option:selected").text()

To działa dobrze

15
Thangamani Palanisamy 23 kwiecień 2013, 10:23

Aby uzyskać wybraną wartość

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

A do uzyskania wybranego tekstu Tekst użyj tej linii:

$("#dropDownId option:selected").text();
13
Mojtaba 23 styczeń 2016, 09:07
$('#id').find('option:selected').text();
12
Nikul 11 kwiecień 2015, 09:39

Wybierz tekst i wybraną wartość na Dropdown / Select Zmień zdarzenie w jQuery

$("#yourdropdownid").change(function() {
    console.log($("option:selected", this).text()); //text
    console.log($(this).val()); //value
})
11
Milap 29 czerwiec 2016, 12:01

Próbować:

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

Lub uzyskać tekst opcji, użyj text():

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

Więcej informacji:

11
Vishal Thakur 9 marzec 2017, 07:03

Po prostu wypróbuj następujący kod.

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

Zwraca tekst wybranej opcji.

10
Muddasir23 13 listopad 2018, 06:03

Posługiwać się:

('#yourdropdownid').find(':selected').text();
9
Peter Mortensen 29 listopad 2014, 09:35
var e = document.getElementById("dropDownId");
var div = e.options[e.selectedIndex].text;
9
Kalaivani M 4 styczeń 2017, 12:53

Ta praca dla mnie:

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

Używam jQuery 1.10.2

7
Rhaymand Tatlonghari 9 lipiec 2015, 02:00

W przypadku rodzeństwa.

<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()
7
Milap 29 czerwiec 2016, 12:03
$(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>

Click to see OutPut Screen

7
Satinder singh 29 wrzesień 2016, 04:59

W przypadku wielu wyborów:

$("#yourdropdownid :selected").map(function(i, v) { return $.trim($(v).text()); }
1
Curtis Yallop 15 marzec 2018, 22:21

Jeśli chcesz wynik jako listy, użyj:

x=[];
$("#list_id").children(':selected').each(function(){x.push($(this).text());})
4
max 18 styczeń 2017, 21:56
$("#dropdown").find(":selected").text();


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

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

$("#dropdown").children(":selected").text();
3
shyamm 17 grudzień 2019, 06:50