2009-11-08 4 views
0

Disons que j'ai la liste qui ressemble à ceci:Question concernant la valeur de sélection et option = « » en utilisant JQuery

<select name="name" id="id"> 
    <option value="10176232332">David</option> 
    <option value="10187232332">Sven</option> 
    <option value="10202232332">Ololf</option> 
    <option value="10219232323">Jan</option> 
    <option value="10230232323">Gustaf</option> 
</select> 

En utilisant JQuery, comment extraire la valeur pour chaque option - par exemple:

<option value="10176232332">David</option> 

Où 10176232332 est la valeur. Utilisation:

($("#id").val()) 

extrait les noms, pas les combinaisons de chiffres. L'utilisation regluar Javascript i utiliser:

list.options[list.selectedIndex].value; 

Y at-il une « façon JQuery » de le faire ou devrais-je tenir à ce qui précède?

Merci d'avance pour toute aide.

Répondre

1

La fonction val() ne fonctionne que pour l'entrée éléments (input, select, textarea, button). L'élément option n'est pas un élément d'entrée. Comme déjà dit, vous devez le gérer comme un élément "normal", l'obtenir par option.attr('value').

+0

AH! Merci beaucoup pour ça, super entrée. – Belkin

+0

Ce n'est pas tout à fait vrai. val() fonctionne sur les éléments 'option' selon official documentation. jkndrkn

+0

Oups, désolé pour le lien cassé: http://docs.jquery.com/Attributes/val – jkndrkn

3
var selected = $("#id option:selected"); 
var value = selected.val(); 
0

Je pense que cela devrait fonctionner:

$("#id").attr("value")

... mais il a été un moment que je jQuery.

+0

Il n'y a pas d'attribut de valeur sur l'élément