utilisation de jquery pour sélectionner une option de liste déroulante
Je me demandais si il est possible d'obtenir jQuery pour sélectionner une option, dire le 4ème point, dans une boîte déroulante?
<select>
<option></option>
<option></option>
<option></option>
<option></option>
<option></option>
</select>
Je veux que l'utilisateur clique sur un lien, puis sélectionnez la boîte de changement de valeur, comme si l'utilisateur a sélectionné en cliquant sur l'option.
- vos options ont une valeur?
InformationsquelleAutor dotty | 2011-02-01
Vous devez vous connecter pour publier un commentaire.
Comment sur
exemple à http://www.jsfiddle.net/gaby/CWvwn/
pour les versions modernes de jquery, vous devez utiliser le
.prop()
au lieu de.attr()
exemple à http://jsfiddle.net/gaby/CWvwn/1763/
selectElement.selectedIndex = index;
est ce que signifie Valet.selectedIndex
ne peut pas être utilisé pour une sélection multiple lorsquemultiple
attribut est utilisé. Et la normale (html) de façon à définir les éléments sélectionnés est laselected
attribut de laoption
éléments.selected
de la propriété de chaque correspondantoptions
élément detrue
(et éventuellement le reste defalse
explicitement). Plusieurs sélections sont assez méchant en fait 🙂new Option() instanceof Node
, donc en supposant.attr('selected')
cartes à la propriété, il sera casher; bien sûr, l'argument pour l'utilisation de.selectedIndex
tient toujours pour régulière des listes déroulantes 🙂onchange
événement n'est jamais déclenchée lorsque la valeur est modifiée par programmation. Vous pouvez ajouter un.trigger('change')
à la fin aussi de déclencher l'événement (bien que ce sera le feu quelle que soit la valeur qu'il a effectivement changé)La solution:
selected
option dans le code HTML.HTML sélectionner les éléments ont une
selectedIndex
propriété qui peut être écrit dans le but de sélectionner une option particulière:En utilisant un JavaScript ceci peut être réalisé par:
.trigger()
pour cela, mais puisque vous êtes déjà le faire avec le code qu'il serait facile de les appeler également le changement de gestionnaires de vous-même.La façon la plus simple est
val(value)
fonction:Et pour obtenir la valeur sélectionnée vous donner pas d'arguments:
Aussi, si vous avez
<option value="valueToSelect">...</option>
, vous pouvez le faire:DÉMO
si vos options ont une valeur, vous pouvez le faire:
", sélectionnez " serait l'id de votre sélectionner ou d'un sélecteur de classe. ou si il y a juste un select, vous pouvez utiliser la balise comme dans l'exemple.
Je voudrais faire de cette façon
Utiliser le code ci-dessous si vous souhaitez sélectionner une option avec une valeur spécifique:
Je préfère nth-child() pour eq (), car il utilise une base de 1 indexation plutôt que basée sur 0, ce qui est un peu plus facile sur mon cerveau.
Avec " élément habituellement, nous utilisons la valeur de l'attribut. Il sera plus facile de définir ensuite:
Essayez ceci:
Ce qui concerne les!
réponse avec l'id:
Une mise en garde ici est de savoir si vous devez activer javascript pour regarder select/option de changement de l'événement, vous devez ajouter
.trigger('change')
de sorte que le code de devenir.parce que seulement l'appel
.attr('selected', 'selected')
ne déclenche pas l'événement