我的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(); }