obtenir l'id de la valeur par l'indice de nom à l'aide de jquery
html
<input id="1" name="myText" type="text" value="20"/>
<input id="2" name="myText" type="text" value="30"/>
<input id="3" name="myText" type="text" value="40"/>
Comment puis-je obtenir l'id de la valeur par index
à l'aide de nom?
L'extrait de code suivant ne fonctionne pas
var getVal = $('[name="myText"]').index(1);
Vous avez eu une faute de frappe
vat
au lieu de var
. Et vous feriez mieux d'ajouter le nom de balise pour le sélecteur.OriginalL'auteur Shahid Ghafoor | 2012-06-09
Vous devez vous connecter pour publier un commentaire.
jQuery détient les éléments du DOM dans l'ensemble comme un tableau de sorte que vous pouvez utiliser l'index de l'opérateur(
[]
) pour obtenir l'élément, ou d'obtenir l'objet jQuery qui enveloppe l'élément souhaité avec:eq(n)
`.eq(n)`Vous devriez parler de ce que vous considérez être
index(1)
de la première ou de la deuxième:Ou:
C'est pas évident, les sélecteurs css, utilisation de la 1-de la base de l'index... "a Noter que, depuis les tableaux JavaScript utilisation de 0 basée sur l'indexation, ces sélecteurs témoignent de ce fait. C'est pourquoi, $('.maclasse:eq(1)") sélectionne le deuxième élément dans le document avec la classe maclasse, plutôt que la première. En revanche, :nth-child(n) utilise 1 à base d'indexation pour être conforme à la spécification CSS."
cher, mais c'est du javascript(jquery) du code. signifie de 0 basée sur l'indexation ;-)..blague @gdoron
OriginalL'auteur gdoron
Si vous souhaitez que la première valeur, vous pourrez filtrer et utiliser le
attr
méthode pour obtenir la valeur de l'attribut id.Si vous voulez un autre élément, vous pouvez utiliser
eq
et choisissez la base zéro de l'élément dans la collection.Comment pouvez-vous dire?
qui pourrait l'être, mais parce qu'il est aussi à l'aide de
index
mal, il n'est pas trop exagéré de penser qu'il est aussi à l'aide de 1 à base d'indexation. J'ai précisé juste au cas où.OriginalL'auteur tvanfosson
Ma réponse fait référence à l'accès à des éléments dans le jQuery objet de résultat par l'index. Vous pouvez utiliser les sélecteurs comme
:eq
indiqué dans d'autres réponses.Toutefois, vous pouvez utiliser
.(1)
au lieu de votreindex
.Est équivalent à
Exemple: http://jsfiddle.net/HackedByChinese/UmKw6/1/
La deuxième méthode est la voie préférée, car elle signifie que vous ne quittez jamais la
jQuery
objet de résultat et peut donc en chaîne d'autres jQuery appels en une seule instruction.get
retourne un élément du DOM, pas un objet jQuery... Vous recevrez le message d'erreur:TypeError: Object a has no method 'attr'
Cette réponse est incorrecte. Le
.get()
fonction renvoie la valeur réelle de l'élément DOM, de sorte que vous ne pouvez pas utiliser le jQuery.attr()
fonction. Il vous suffit de faire une erreur de syntaxe.Corrigés. Mon cerveau était ailleurs.
.get() ne fonctionne pas
Fonctionne très bien pour moi. Voir le violon, j'ai joint.
OriginalL'auteur HackedByChinese