2012-03-28 19 views
10

Sono nuovo di JQuery/Javascript ecc ... sulla base del seguente articolo: How to make an anchor tag refer to nothing?Come selezionare più elementi con jQuery

vorrei applicare la funzione Java per diversi id. Non possiamo eseguire la funzione per le classi anziché per gli id?

<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 */ 
}); 

Fondamentalmente come sopra, come si esegue la funzione sopra per TUTTI i collegamenti? È possibile? Grazie in anticipo.

+1

quale collegamento? Tutto quello che vedo nel tuo markup è '' ... –

+3

Gli ID ** devono ** essere unici. –

+1

'id's deve essere univoco all'interno di un documento, non puoi avere elementi con lo stesso' id' – jmoerdyk

risposta

11

Utilizza il seguente

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

Questo aggiunge un gestore di clic a tutti gli elementi con classe contenente style1. Non dovresti avere ID duplicati

+0

Grazie! Era così semplice! – RiceBucket

2

Prima di tutto, gli ID devono essere unici. Non dovresti avere più elementi con lo stesso ID.

Per selezionare per ID in jQuery utilizzare il carattere #. $('#myid'). Questo otterrà il primo elemento con quell'ID, in quanto ce ne dovrebbe essere solo uno (puoi fare cheat facendo $('[id="myid"]') per ottenere più elementi con lo stesso ID).

Suggerisco di utilizzare una classe per selezionare tutti i collegamenti. Le classi sono selezionate usando il carattere ..

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

Grazie per aver chiarito! – RiceBucket

21

si dovrebbe nominare gli ID univoco,

<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> 

quindi utilizzare questo codice

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

Suggerisco '$ (". Style1 "). Click (function() {// whatever});' – think123

+2

+1 risponde alla domanda originale, ma in questo caso un singolo selettore di classe avrebbe svolto il lavoro. – GoodSp33d

Problemi correlati