2011-03-14 13 views
6

Tengo 2 botones html llamados Button1 y Button2.Evento de clic de acceso de dos botones usando jquery

El botón dos realiza la misma operación usando jquery.

ahora escribí el mismo jQuery en el evento de clic de ambos buttons.thats muestra a continuación

$('#Button1').click(function() { 
xyz //some jquery 
    }) 



$('#Button2').click(function() { 
xyz //some jquery 
    }) 

El tanto jQuery son los mismos. ¿Puedo ver el evento click del botón en una sola función?

+0

Posible duplicado de http://stackoverflow.com/questions/3810731/same-function-for-two-buttons-in-jquery –

Respuesta

15

Se puede utilizar un multiple selector:

$('#Button1, #Button2').click(function() { 
    // You can use `this` to refer to the source element, for instance: 
    $(this).css("color", "red"); 
}); 
+0

+1 Función Nifty :). – Kevin

+0

@fedric. Solo quiero aclarar algo. Si lo hice, ¿hay alguna forma de entender qué botón provoca el evento? –

+1

@Null Pointer, sí, puede usar 'this' en el controlador de eventos para referirse al elemento de origen. –

2

me gustaría utilizar una clase sobre los botones:

$('.className').click(function() { 
    var item = $(this); // item that triggered the event 

}); 
1

declarar una función y utilizarlo como un parámetro. Por ejemplo:

function handleClick() { 
    // Do something.. 
} 

$('#Button1').click(handleClick); 
$('#Button2').click(handleClick); 

Hope this help.

Cuestiones relacionadas