jQuery: sélectionnez la classe et l'id d'un élément en même temps?
J'ai quelques liens que je veux sélectionner classe et id en même temps.
C'est parce que j'ai 2 comportements différents. Quand une classe de liens a un nom de classe, ils se comportent d'une manière, quand les mêmes clas de liens ont un autre nom de classe, ils se comportent différemment. Les noms de classe sont switch avec jquery.
Je dois donc pouvoir sélectionner une classe de liens et un id en même temps. Est-ce possible?
J'ai essayé:
$("a .save #country")
Sans résultat.
6 réponses
Vous pouvez faire:
$("#country.save")...
Ou
$("a#country.save")...
Ou
$("a.save#country")...
Comme vous préférez.
, Donc oui, vous pouvez spécifier un sélecteur qui doit correspondre à l'ID et classe (et potentiellement nom de la balise et tout ce que vous voulez jeter).
Juste pour ajouter que la réponse fournie par Alex a fonctionné pour moi, et non celle qui est mise en évidence comme une réponse.
Celui-ci n'a pas fonctionné pour moi
$('#country.save')
Mais celui-ci l'a fait:
$('#country .save')
Donc, ma conclusion est d'utiliser l'espace. Maintenant, je ne sais pas si c'est à la nouvelle version de jQuery que j'utilise (1.5.1), mais de toute façon j'espère que cela aidera toute personne ayant un problème similaire que j'ai eu.
Edit: crédit complet pour explication (dans le commentaire de la réponse D'Alex) va à Felix Kling qui dit:
l'espace est le sélecteur descendant, c'est-à-dire A B signifie " correspondre à tous les éléments qui
match B qui sont un descendant d'éléments correspondant à A". AB signifie " Tout sélectionner
élément correspondant à A et B". Donc, cela dépend vraiment de ce que vous voulez atteindre. #country.save
et #country .save
ne sont pas équivalentes.
Cela fonctionnera lors de l'ajout d'espace entre id et class identifier
$("#countery .save")...
En fin de compte, les mêmes règles que pour css s'appliquent.
Donc je pense que cette référence pourrait être d'une utilité précieuse.
$("a.save, #country")
Sélectionnera à la fois la classe" a. save "et l'id" country".