我遇到了一个问题,我有这个片段:
$('#new_comment').live('ajax:beforeSend', function(evt, xhr, settings) {
$(':submit', this).click(function() {
return false;
});
});
我用来禁用提交按钮,因此如果多次输入,则不允许提交多条评论。
问题在于我将生产中的JS编译成一个文件,因此代码在所有页面上都可用,并且它似乎影响了代码的其他部分。
我在控制台中遇到的错误是:
未捕获的TypeError:$(...)。live不是函数
如何阻止这种情况发生?
答案 0 :(得分:3)
您使用的是哪个版本的jquery? jQuery .live()已在1.9及更高版本中删除。
改为使用:
.on(eventType, selector, function)
答案 1 :(得分:0)
live已弃用,并且已在stackoverflow上为其替代方案提供了答案,请检查此jquery's live() is deprecated. What do I use now?
答案 2 :(得分:0)
live()
的使用已被折旧。
.live()
替换为$(document).on('event', 'selector', function() {});
.delegate()
替换为$('selector').on('event', 'selector', function() {});
.bind()
替换为$('selector').on('event', function() {});