2012-05-02 15 views
12

Eventuali duplicati:
jQuery get specific option tag text
How to get the text of the selected option of a select using jquery?Come ottenere il testo del valore selezionato di un elenco a discesa?

Ho un elenco a discesa e voglio conoscere il testo della voce selezionata. Ad esempio:

<select> 
    <option value="1">Volvo</option> 
    <option value="2">Saab</option> 
    <option value="3">Mercedes</option> 
</select> 

Se conosco il valore selezionato, come posso ottenere il suo valore di testo? Ad esempio, se il valore è 1, come posso ottenere Volvo?

Aiuto molto apprezzato.

risposta

29

È possibile utilizzare option:selected per ottenere l'opzione prescelta dell'elemento select, allora il metodo text():

$("select option:selected").text(); 

Ecco un esempio:

console.log($("select option:selected").text());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
 
<select> 
 
    <option value="1">Volvo</option> 
 
    <option value="2" selected="selected">Saab</option> 
 
    <option value="3">Mercedes</option> 
 
</select>

+0

Quindi è possibile aggiungere collegamenti a ciascuna funzione jQuery nel docs ... Ad ogni modo non mi piace il modo in cui è fatto nella sua modifica. Può essere più semplice con '$ (" select) .val() '. Come ho detto, fino a te e +1 a proposito. – gdoron

+0

ok ho codificato' alert ($ ("# presetname -" + rname + "opzione : selezionato "). text());' ma ha un errore Qualunque idea del perché non funziona ..? – guitarlass

+0

Qual è l'errore, e quale valore ha 'rname'? –

14
$("#select_id").find("option:selected").text(); 

È utile se il controllo è sul lato server. In .NET assomiglia:

$('#<%= dropdownID.ClientID %>').find("option:selected").text(); 
1

Il modo più semplice è attraverso css3 $("select option:selected") e quindi utilizzare la funzione .text() o .html(). dipende da cosa vuoi avere.

+2

CSS3? Dove viene questo? –

+0

Infatti,': selected' non è CSS3, è uno dei potenziamenti del selettore jQuery. –

+1

_ "Perché': selected 'è un'estensione jQuery e non fa parte delle specifiche CSS, le query che usano': selected' non possono ... ... "_ [fonte] (http://api.jquery.com/selected-selector/) – gdoron

0

Ciao, se si hanno dropdownlist come questo

<select id="testID"> 
<option value="1">Value1</option> 
<option value="2">Value2</option> 
<option value="3">Value3</option> 
<option value="4">Value4</option> 
<option value="5">Value5</option> 
<option value="6">Value6</option> 
</select> 
<input type="button" value="Get dropdown selected Value" onclick="getHTML();"> 

dopo aver dato id per DropDownList voi solo bisogno di aggiungere il codice jQuery come questo

function getHTML() 
{ 
     var display=$('#testID option:selected').html(); 
     alert(display); 
} 
Problemi correlati