我有一个按钮,我想附加一个点击监听器,但每次代码运行时,它都会抛出一个控制台错误
jquery.js:4435 Uncaught TypeError: ((n.event.special[g.origType] || (intermediate value)).handle || g.handler).apply 不是函数
这是触发错误的js代码,第一行运行正常,第二行是导致错误的代码
$toolbar.off('click', '.btn-save'); // $toolbar is assigned $("#toolbar") on init
$toolbar.on('click', '.btn-save', function(e){
saveData(0);
});
让我感到困惑的是,如果我通过控制台手动运行那段代码,我不会收到任何错误
这是 HTML
<div class="row" id="toolbar">
<div class="col-lg-12">
<button type="button" class="btn btn-primary btn-save">Save</button>
<button type="button" id="btnCancel" class="btn btn-default btn-cancel">Cancel</button>
</div>
</div>
最佳答案
我找到了问题,在我的监听器下面,有一个我附加的不相关的监听器
$(document).on("click", "#btn-back", Views.Editor.close);
这里的问题是 Views.Editor.close
是错误的方法名称。
当我更改方法名称时,错误消失了
我没有意识到一个不相关的听众会影响到其他人
关于javascript - jQuery onclick 注册错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36205290/