2009-07-27 10 views

risposta

59
$('#uploadChoice div').click(function(event) { 
    var index = $(this).index(); 
}); 
+1

il massimo dei voti amico mio! :) – Stephen

+1

Troppo semplice. Grazie mille! –

0

È possibile ottenere il contenuto del div con

$("#uploadChoice div").click(function(){ 
    var choice = $(this).html; 
} 

E poi basta fare un'istruzione switch o qualche if nidificati.

Personalmente, tuttavia, aggiungerei un ID a ciascuna div e controllerei semplicemente l'ID dell'elemento cliccato.

+0

Posso chiedere perché questo è stato votato? Di sicuro si prende cura di ciò che il poster originale stava chiedendo. Di fatto, fornisce due opzioni per identificare l'opzione su cui un utente ha fatto clic. Inoltre, questa soluzione consentirebbe all'utente di riordinare i propri pulsanti senza dover modificare alcun codice, in quanto utilizza il valore (o ID) dei pulsanti anziché la loro posizione relativa. – idrumgood

+0

Ah, penso di aver capito. L'OP stava cercando specificamente un modo per farlo usando 'eq', quindi le mie soluzioni non lo soddisfacevano. Non importa. – idrumgood

5

Un'alternativa più semplice che non richiede la duplicazione di un selettore è la seguente

$('#uploadChoice div').click(function(event) { 
    var index = $(this).prevAll().length; 
}); 
+0

Bello! Tristemente lascerò brianng i segni come lui mi ha ottenuto più veloce :) Grazie per l'aiuto! – Stephen

+0

I marchi rappresentano la soluzione migliore. Non più veloce :) Immagina di essere venuto qui via google. Quale risposta vorresti vedere! – redsquare

+0

Definately brianng ora avete detto quello;) :) – Stephen

2

È possibile aggiungere selettori così, e passare "$ (this)" come argomento:

$(document).on('click', 'button.testbutton', function() { 
 
    
 
    var index = $('div.example > div.xyz').find('button.testbutton').index($(this)); 
 

 
});

Problemi correlati