quitar how eventos evento event eliminar ejemplos disable javascript jquery click

how - quitar evento onclick javascript



Cómo eliminar todos los controladores de eventos Click en Jquery (5)

Estoy teniendo un problema Básicamente, cuando un usuario hace clic en un enlace ''Editar'' en una página, se ejecuta el siguiente código de Jquery:

$("#saveBtn").click(function () { saveQuestion(id); });

Al hacer esto, el evento onClick del botón guardar llama al método saveQuestion() y pasa el ID de la pregunta para la cual se hizo clic en el enlace ''Editar''.

Pero si en la misma sesión el usuario hace clic en editar en 2 preguntas, en lugar de sobrescribir el controlador de evento de click anterior, en su lugar causa la ejecución de 2 controladores de eventos, uno que podría llamar a saveQuestion(1) y el otro podría llamar a saveQuestion(2) . Al hacer esto, 1 pregunta sobrescribe a la otra.

¿Hay alguna manera de eliminar todos los eventos de click anteriores que se han asignado a un botón?


¿Hay alguna manera de eliminar todos los eventos de clic anteriores que se han asignado a un botón?

$(''#saveBtn'').unbind(''click'').click(function(){saveQuestion(id)});


Si usaste ...

$(function(){ function myFunc() { // ... do something ... }; $(''#saveBtn'').click(myFunc); });

... entonces será más fácil desvincularlo más tarde.


Utilizaría off() para eliminar un evento como ese:

$("#saveBtn").off("click");

pero esto eliminará todos los eventos de clic vinculados a este elemento. Si la función con SaveQuestion es el único evento enlazado, lo anterior lo hará. Si no, haz lo siguiente:

$("#saveBtn").off("click").click(function() { saveQuestion(id); });


$(''#saveBtn'').off(''click'').click(function(){saveQuestion(id)});


$(''#saveBtn'').off(''click'').on(''click'',function(){ saveQuestion(id) });

Use jquery''s off() vez on