我的backbone.js表单有一个textfield(没有提交按钮).我需要在视图中捕获提交事件(使用enter键).以下是示例代码.不知何故按enter键不调用submit方法.相反,该表单用于重新加载.
脚本:
var FormView = Backbone.View.extend({
el: '#form',events: {
"submit": "submit",},initialize: function () {
console.log("initialize");
},submit: function (e) {
e.preventDefault();
console.log("submit");
}
});
new FormView();
HTML:
<form id="form"> <input type="text"/> </form>
解决方法
将其添加到您的Backbone视图中:
events: {
'submit form': 'submit'
}
另外请注意,在HTML中,必须定义表单操作.
如果您没有定义操作,那么请执行以下操作:
events: {
'keyup': 'processKey'
}
processKey: function(e) {
if(e.which === 13) // enter key
this.submit();
}