Ottieni il testo selezionato da un elenco a discesa (seleziona la casella) usando jQuery

Come posso ottenere il testo selezionato (non il valore selezionato) da un elenco a discesa in jQuery?

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

Prova questo:

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

Per un menu a discesa ASP.NET è ansible utilizzare il seguente selettore:

 $("[id*='MyDropDownId'] :selected") 

Le risposte pubblicate qui, per esempio,

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

non ha funzionato per me, ma questo ha fatto:

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

Probabilmente è una versione precedente di jQuery.

Se hai già il dropdownlist disponibile in una variabile, questo è ciò che funziona per me:

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

Le altre risposte a questa domanda mi hanno aiutato, ma alla fine il thread del forum jQuery $ (questa opzione + “opzione: selezionata”). Attr (“rel”) selezionata non funziona in IE ha aiutato di più.

Aggiornamento: risolto il link sopra

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

$("#DropDownID").val() darà il valore di indice selezionato.

Questo funziona per me:

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

Versione jQuery : 1.9.1

Questo funziona per me

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

Se l’elemento è stato creato dynamicmente

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

Per il testo dell’elemento selezionato, utilizzare:

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

Per il valore dell’elemento selezionato, utilizzare:

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

Vari modi

 1. $("#myselect option:selected").text(); 2. $("#myselect :selected").text(); 3. $("#myselect").children(":selected").text(); 4. $("#myselect").find(":selected").text(); 
 $("#dropdownID").change(function(){ alert($('option:selected', $(this)).text()); }); 
 var someName = "Test"; $("#<%= ddltest.ClientID %>").each(function () { $('option', this).each(function () { if ($(this).text().toLowerCase() == someName) { $(this).attr('selected', 'selected') }; }); }); 

Questo ti aiuterà a ottenere la giusta direzione. Sopra il codice è completamente testato se hai bisogno di ulteriore aiuto fammi sapere.

Per coloro che utilizzano gli elenchi di SharePoint e non vogliono utilizzare l’ID generato a lungo, questo funzionerà:

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

Si prega di usare questo

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

Quindi si prega di avvisare “selValue” e “selText”. Ottieni il valore e il testo a discesa selezionati

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

Invece di #selectID puoi usare qualsiasi selettore jQuery, come .selectClass usando la class.

Come menzionato nella documentazione qui .

Il: selettore selezionato funziona per gli elementi Non funziona per checkbox o ingressi radio; uso :checked per loro.

.text () Come da documentazione qui .

Ottieni il contenuto del testo combinato di ciascun elemento nel set di elementi corrispondenti, inclusi i loro discendenti.

Quindi puoi prendere del testo da qualsiasi elemento HTML usando il metodo .text() .

Fare riferimento alla documentazione per una spiegazione più approfondita.

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

Funziona bene

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

Per ottenere l’uso del valore selezionato

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

e per ottenere il testo dell’articolo selezionato usa questa linea:

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

Seleziona Testo e valore selezionato nel menu a discesa / seleziona modifica evento in jQuery

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

Uso:

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

il seguente ha funzionato per me:

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

Nel caso del fratello

 ADD Client   /*jQuery*/ $(this).siblings('select').children(':selected').text() 
 var e = document.getElementById("dropDownId"); var div = e.options[e.selectedIndex].text; 

Questo lavoro per me:

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

Sto usando jQuery 1.10.2

 $(function () { alert('.val() = ' + $('#selectnumber').val() + ' AND html() = ' + $('#selectnumber option:selected').html() + ' AND .text() = ' + $('#selectnumber option:selected').text()); }); 
       

Provare:

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

O per ottenere il testo dell’opzione, usa text() :

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

Ulteriori informazioni:

Se vuoi il risultato come lista, usa:

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

Per i multi-selects:

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

se usi asp.net e scrivi

  

allora dovresti usare

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