Ich habe ein Problem. Wenn ein Benutzer auf einer Seite auf den Link "Bearbeiten" klickt, wird grundsätzlich der folgende Jquery-Code ausgeführt:
$("#saveBtn").click(function () {
saveQuestion(id);
});
Auf diese Weise ruft das Ereignis onClick der Schaltfläche Speichern die saveQuestion()
Methode auf und gibt die ID der Frage weiter, für die auf den Link 'Bearbeiten' geklickt wurde.
Wenn der Benutzer jedoch in derselben Sitzung auf "Bearbeiten" für zwei Fragen klickt, werden anstelle des vorherigen click
Ereignishandlers zwei Ereignishandler ausgeführt, von denen einer möglicherweise aufruft saveQuestion(1)
und der andere möglicherweise aufruft saveQuestion(2)
. Auf diese Weise überschreibt eine Frage die andere.
Gibt es eine Möglichkeit, alle vorherigen click
Ereignisse zu entfernen , die einer Schaltfläche zugewiesen wurden?
quelle
quelle
unbind()
ist ab jQuery 3.0 veraltet und die Verwendung vonoff()
wird seit 1.7 empfohlen.quelle
Wenn Sie verwendet haben ...
... dann ist es später einfacher, die Bindung aufzuheben.
quelle
Verwenden Sie jquery's aus und an
quelle