Удаление прослушивателя событий на кнопке программно - PullRequest
3 голосов
/ 03 апреля 2011

У меня есть кнопка, которая зарегистрирована с событием onclick, как показано

<Input type="Button" name="Register" Value="Register" onclick="CallMe();"/>

Можно ли программно удалить или отменить регистрацию события onclick для этой кнопки?

Ответы [ 2 ]

7 голосов
/ 03 апреля 2011

Вы можете установить атрибут onclick на null.

var el = document.getElementById('inputId');
el.onclick = null;

или лучше просто удалите атрибут вместе с removeAttribute() документами метода элемента.

var el = document.getElementById('inputId');
el.removeAttribute('onclick');

вам нужно будет добавить идентификатор элемента, хотя для этого ..

пример кода на http://jsfiddle.net/gaby/PBjtZ/

1 голос
/ 03 апреля 2011
document.getElementsByName("Register")[0].onclick = "" 

или

document.getElementsByName("Register")[0].removeAttribute("onclick")

Обязательно поместите это в тег JS в конце вашего документа. Таким образом, DOM доступен, когда этот скрипт запущен.

первый пример получает все элементы с именем «Register» в вашем домене и возвращает первый, затем он находит и устанавливает атрибут onclick в пустую строку. (может быть нулевым)

второй пример делает то же самое, но удаляет атрибут "onclick".

Будьте осторожны, если у вас есть более одного элемента с именем «Register», вы должны делать это, как сказал вам Gaby aka G. Petrioli.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...