Хорошо, мне интересно, как отвязать встроенное событие onclick в jQuery. Вы думаете, что .unbind()
будет работать, но это не так.
Чтобы проверить это для себя, поиграйте со следующими HTML и JavaScript:
function UnbindTest() {
$("#unbindTest").unbind('click');
}
function BindTest() {
$("#unbindTest").bind('click', function() { alert("bound!"); });
}
<button type="button" onclick="javascript:UnbindTest();">Unbind Test</button>
<button type="button" onclick="javascript:BindTest();">Bind Test</button>
<button type="button" onclick="javascript:alert('unbind me!');" id="unbindTest">Unbind Button</button>
Как вы можете видеть, unbinding не отвязывает событие inline onclick
... однако он отбрасывает событие click, добавленное с помощью bind()
.
Итак, мне интересно, есть ли способ отключить встроенные события onclick, не выполняя следующие действия:
$("#unbindTest").get(0).onclick = "";
Спасибо