2011-02-04 36 views
31

¿Cómo mezclar variables con selectores?jQuery selectores con variables

Tengo la variable de ID.

Quiero seleccionar la imagen con esta identificación de div #one.

jQuery('#one img .id') es el selector. Intenté $('#one img .'+id) pero no funciona.

+2

¿Podría proporcionar un poco más del código y explicar qué es exactamente lo que no funciona? –

Respuesta

43

Editar: Basado en su comentario a continuación, se utilizaría la siguiente:

$('#one img.'+id) 

En su pregunta usted tiene un espacio entre img y la .class, no tengo simplemente quítelo para obtener img.className o img.'+className

+0

Perdón por confundirlos, la identificación es una variable jQuery que contiene DOM CLASS. – anonymous

+1

@anon actualizó mi respuesta –

+0

Es importante tener en cuenta que la identificación no debe ser numérica, por lo tanto, haga toString() si id es un número. – isync

1

esto podría ser un error tipográfico o de que realmente utilizar la variable id en una clase, pero tal vez debería ser:

jQuery('#one img #'+id) 
1

. es un selector de clase. Intenta cambiar eso a un #:

$('#one img #'+id) 
+0

Pero quiero seleccionar una CLASE. Estoy intentando la forma en que dices pero con. en lugar de #. No funciona – anonymous

0

Quizás desee seleccionar img qué conjunto con clase específica y guardar esta clase en la variable id dentro del elemento div con id = 'uno'.

DEMO

En demostración selecciono elemento img, clonarlo, y anexar a div id = uno.

1

Las identificaciones deben ser únicas en su HTML. Por lo tanto, debe poder seleccionar la ID directamente sin preocuparse de en qué DIV se encuentra. Dado que menciona que la ID está adjuntada a la etiqueta img, esto debería ser suficiente.

$('#' + id);