2011-03-13 13 views
29

Tengo una lista grande de casillas de verificación con valores exclusivos id. Me gustaría obtener el id de la casilla de verificación que ejecuta mi función de JavaScript. ¿Puedo hacer esto usando $(this)?Obtención del remitente en jQuery

+0

Tendrá que proporcionar su ejemplo en primer lugar, de lo que entendemos por "casilla de verificación [...] ejecuta mi función de JavaScript" – BoltClock

Respuesta

47

Puede obtener el objetivo del evento usando event.target.

$('input:checkbox[id]').change(function(event) { 
    var checkboxID = $(event.target).attr('id'); 
    alert(checkboxID); 
}); 

JSfiddle Demo

+0

EXACTAMENTE lo que estaba buscando. ¡¡Gracias!! – esqew

+2

En mi caso, con el elemento de botón en cromo y Safari solo funciona la versión con $ (esto). Así que ten cuidado con el uso de $ (event.target) –

10

Si this puntos a su casilla de verificación, a continuación, se llega a la identificación utilizando $(this).attr('id')

Por ejemplo:

$('input:checkbox').click(function(){ 
    var id = $(this).attr('id'); 
    // do something with id 
}); 

Ver DEMO.

+0

No es exactamente lo que estaba buscando, lo siento si me no fue lo suficientemente claro :( – esqew

+0

@esqew: vea la demostración en mi respuesta – rsp

+0

Esta solución se basa en que 'this' no está limitado a otra cosa.' Event.target' es una solución más estable. –

Cuestiones relacionadas