jQuery: sélectionnez la classe et l’identifiant d’un élément en même temps?

J’ai quelques liens que je veux sélectionner en même temps.

C’est parce que j’ai deux comportements différents. Lorsqu’une classe de liens a un nom de classe, ils se comportent d’une seule façon, quand les mêmes classes de liens ont un autre nom de classe, elles se comportent différemment. Les noms de classes sont commutés avec jquery.

Je dois donc pouvoir sélectionner une classe de liens AND id en même temps. Est-ce possible?

J’ai essayé:

$("a .save #country") 

sans aucun résultat.

Tu peux faire:

 $("#country.save")... 

OU

 $("a#country.save")... 

OU

 $("a.save#country")... 

comme tu préfère.

Donc, oui, vous pouvez spécifier un sélecteur qui doit correspondre à l’ID et à la classe (et éventuellement au nom de tag et à tout ce que vous voulez append).

Juste pour append que la réponse fournie par Alex a fonctionné pour moi, et non celle qui est mise en évidence comme réponse.

Celui-ci n’a pas fonctionné pour moi

 $('#country.save') 

Mais celui-ci a fait:

 $('#country .save') 

alors 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 j’espère que cela aidera toute personne ayant des problèmes similaires.

edit: Un crédit complet pour l’explication (dans le commentaire à la réponse d’Alex) va à Felix Kling qui dit:

L’espace est le sélecteur descendant, c’est-à-dire que AB signifie “Correspond à tous les éléments qui correspondent à B, qui sont des descendants d’éléments correspondant à A”. AB signifie “sélectionner tous les éléments correspondant à A et B”. Donc, cela dépend vraiment de ce que vous voulez réaliser. #country.save et #country .save ne sont pas équivalents.

Cela fonctionnera lors de l’ajout d’espace entre l’identifiant et l’identifiant de classe

$("#countery .save")...

En fin de compte, les mêmes règles que pour les CSS s’appliquent.

Je pense donc que cette référence pourrait être utile.

 $("a.save, #country") 

sélectionnera les classes “a.save” et “country”.

Que diriez-vous de ce code?

 $("a.save#country")