基本上我正在尝试创建一个对象来处理基本的ajax登录表单。每次提交表单时,控制台都应该记录“表单”,但是当表单加载时,它只执行一次。 我做错了什么?
这是代码
Login = {
init: function () {
var $self = this;
$('form').on('submit', $self.on_submit());
},
on_submit: function () {
console.log('form');
return false;
},
do_login: function () {
console.log('login');
}
}
$(document).ready(function () {
Login.init();
});
这是测试网址
由于
答案 0 :(得分:0)
错误在这里:
$('form').on('submit', $self.on_submit());
做得对:
$('form').on('submit', $self.on_submit);
而不是分配事件处理程序,而是进行函数调用
答案 1 :(得分:0)
$('form').on('submit', $self.on_submit);
答案 2 :(得分:0)
.on('submit', $self.on_submit());
这是on_submit的返回值(即false),而不是函数。做:
.on('submit', $self.on_submit);
或者
.on('submit', function() { $self.on_submit(args); });
如果您需要传递参数。