2012-03-28 26 views
10

Soy nuevo en jQuery/Javascript, etc ... basado en el siguiente artículo: How to make an anchor tag refer to nothing?Cómo seleccionar varios elementos con jQuery

quisiera aplicar la función de Java para varios identificadores. ¿No podemos hacer que la función se ejecute para clases en lugar de ids?

<span class="style1" id="myid">Link</span> 
<span class="style1" id="myid">Link</span> 
<span class="style1" id="myid">Link</span> 
<span class="style1" id="myid">Link</span> 
<span class="style1" id="myid">Link</span> 

$('myid').click(function() { 
    /* put your code here */ 
}); 

Básicamente como arriba, ¿cómo ejecuto la función anterior para TODOS los enlaces? es posible? Gracias por adelantado.

+1

lo enlace? Todo lo que veo en su marcado es '' ... –

+3

Los ID ** deben ** ser únicos. –

+1

'id's debe ser único dentro de un documento, no puede tener elementos con el mismo' id' – jmoerdyk

Respuesta

11

Usar la siguiente

$('.style1').click(function() {  
    /* put your code here */ 
}); 

Esto añade un controlador de clic a todos los elementos con clase que contiene style1. No debe tener ID duplicados

+0

¡Gracias! ¡Era tan simple como eso! – RiceBucket

2

En primer lugar, los ID deben ser únicos. No deberías tener múltiples elementos con la misma ID.

Para seleccionar por ID en jQuery, utilice el carácter #. $('#myid'). Esto obtendrá el primer elemento con esa ID, ya que solo debería haber una (puedes hacer trampa al hacer $('[id="myid"]') para obtener múltiples elementos con la misma ID).

Sugiero usar una clase para seleccionar todos sus enlaces. Las clases se seleccionan usando el carácter ..

$('.style1').click(function(){}); 
+0

¡Gracias por aclarar! – RiceBucket

21

debe nombrar los identificadores de manera única,

<span class="style1" id="myid1">Link</span> 
<span class="style1" id="myid2">Link</span> 
<span class="style1" id="myid3">Link</span> 
<span class="style1" id="myid4">Link</span> 
<span class="style1" id="myid5">Link</span> 

a continuación, utilizar el código

$('#myid1,#myid2,#myid3,#myid4,#myid5').click(function() { 
    /* put your code here */ 
}); 
+1

Sugiero '$ (". Style1 "). Click (función() {// lo que sea});' – think123

+2

+1 responde a la pregunta original, pero en este caso un solo selector de clase habría hecho el trabajo. – GoodSp33d

Cuestiones relacionadas