web-dev-qa-db-fra.com

Comment obtenir le texte de la valeur sélectionnée d'une liste déroulante?

Dupliquer possible:
jQuery obtenir le texte de balise d'option spécifique
Comment obtenir le texte de l'option sélectionnée d'une sélection en utilisant jquery?

J'ai une liste déroulante et je veux connaître le texte de l'élément sélectionné. Par exemple: 

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

Si je connais la valeur sélectionnée, comment puis-je obtenir sa valeur textuelle? Par exemple, si la valeur est 1, comment puis-je obtenir Volvo?

Aide très appréciée.

14
guitarlass

Vous pouvez utiliser option:selected pour obtenir l'option choisie de l'élément select, puis la méthode text():

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

Voici un exemple:

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>
32
Rory McCrossan
$("#select_id").find("option:selected").text();

Il est utile si votre contrôle est du côté du serveur. Dans .NET cela ressemble à:

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

Salut si vous rencontrez dropdownlist comme ça

<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();">

après avoir donné id à dropdownlist, il vous suffit d’ajouter un code jquery comme celui-ci

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

Le moyen le plus simple consiste à passer par css3 $("select option:selected") puis à utiliser la fonction .text() ou .html() en fonction de ce que vous voulez avoir.

1
Neysor