2010-08-02 10 views
5

Tengo un botón de enlace que quiero cambiarlo onclick función de devolución de llamada cuando se hace clic:Adición onclick atributo a la etiqueta <a> usando jQuery

estoy usando .attr() para cambiar el evento onclick pero simplemente no funciona.

$('#' + test).text('Unlike'); 
$('#' + test).attr("onclick", "return deleteLikeComment('" 
     + CommentsWrapper + "','" + activityID + "', '" + test + "');"); 

Pero simplemente no funciona.

Solo quiero cambiar el método de devolución de llamada cuando se hace clic en el enlace.

Respuesta

10

¿Por qué estás asociando el evento con un atr?

¿Por qué no lo hacen así:

$('#' + test).bind("click", function() 
{ 
    //functionality that you were trying to add using attr can now go inside here. 
}); 
+2

... o simplemente '.click (function() {/ * ... * /})' en lugar de bind. –

+0

Gracias, funciona genial –

+0

@Bears, sí, tienes razón. Esa es la forma abreviada de escribir lo que hace bind. – spinon

5
$('#' + test).click(function() { 
    return deleteLikeComment(...); 
}); 
+0

perfecto, trabajando ahora –

2

Si desea cambiar el método de devolución de llamada cada vez que se hace clic en el enlace, utilice .toggle(). Alterna entre las dos funciones proporcionadas.

Cuestiones relacionadas