2010-08-02 8 views
5

Mam przycisk linku, który chcę zmienić go onclick funkcję zwrotną po kliknięciu:Dodajesz onclick atrybut do <a> tagu jQuery

używam .attr() zmienić zdarzenie onclick ale to po prostu nie działa.

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

Ale to po prostu nie działa.

Chcę zmienić metodę wywołania zwrotnego po kliknięciu łącza.

Odpowiedz

10

Czemu mocowania wydarzenie w attr?

Dlaczego po prostu nie zrobić tak:

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

... lub po prostu '.click (function() {/ * ... * /})' zamiast bind. –

+0

Dzięki, działa świetnie –

+0

@Oczywiście, masz rację. To jest skrótowy sposób pisania tego, co robi bind. – spinon

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

idealny, działa teraz –

2

Jeśli chcesz zmienić metodę callback każdym kliknięciu łącza, użyj .toggle(). Naprzemiennie występuje pomiędzy dwiema dostarczonymi funkcjami.