44 votes

Sélecteurs jQuery avec variables

Comment mélanger les variables avec les sélecteurs ?

J'ai une variable d'identification.

Je veux sélectionner l'image avec cet id dans la div #one.

jQuery('#one img .id') est le sélecteur. J'ai essayé $('#one img .'+id) mais ça ne marche pas.

55voto

Ben Rowe Points 15269

Edit : D'après votre commentaire ci-dessous, vous devriez utiliser ceci :

$('#one img.'+id)

Dans votre question, vous avez un espace entre img y el .class j'ai simplement enlevé ça pour que tu obtiennes img.className o img.'+className

Avec l'introduction de littéraux de modèle dans ECMAScript 2015, vous pouvez également faire

$(`#one img.${id}`)

3voto

Il peut s'agir d'une erreur de frappe ou d'une utilisation réelle de l'option id dans une classe, mais peut-être qu'elle devrait l'être :

jQuery('#one img #'+id)

3voto

Chris Laplante Points 18060

. est un sélecteur de classe. Essayez de le remplacer par un # :

$('#one img #'+id)

2voto

user3094826 Points 117

Les ID doivent être uniques dans votre HTML. Vous devriez donc être en mesure de sélectionner directement l'ID sans vous soucier du DIV dans lequel il se trouve. Puisque vous mentionnez que l'ID est attaché au img alors cela devrait suffire.

$('#' + id);

0voto

Joko Wandiro Points 895

Vous voulez peut-être sélectionner les images qui ont une classe spécifique et enregistrer cette classe dans la variable id de l'élément div avec id='one'.

DEMO

Dans la démo, je sélectionne l'élément img, le clone et l'ajoute à div id=one.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X