使用主干网中的输入捕获表单提交事件
Capturing form submit events using enter in backbone
我的backbone.js表单只有一个文本字段(没有提交按钮)。我需要在视图中捕获提交事件(使用回车键)。下面是示例代码。不知怎的,在按下回车键时不会调用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>
将其添加到您的主干视图:
events: {
'submit form': 'submit'
}
另外,请注意,在HTML中,必须定义表单操作。
如果你没有定义动作,那么就这样做:
events: {
'keyup': 'processKey'
}
processKey: function(e) {
if(e.which === 13) // enter key
this.submit();
}
如果在捕获提交事件时遇到问题,请确保在视图中定义了'el'属性。
var myView = Backbone.View.extend({
el: $(body),
events: {
"submit form": "doMethod"
},
doMethod: function(e) {
e.preventDefault();
console.log('form fired');
}
});
相关文章:
- 如何在表单提交事件后运行JavaScript*
- 动态添加/复制表单时绑定到表单提交事件
- 表单提交事件中this.submit()的行为
- 如何重置表单提交事件的 event.preventDefault()
- 收听在同一页面上使用两个表单提交事件
- 文件上传器表单提交事件调用面板以显示包含文件更新程序我想删除代码重写在 jquery 中使用循环重写所有文件类型
- 捕获 jQuery 表单提交事件
- 为什么 Jquery 表单提交事件不触发
- 我在停止表单提交事件时遇到问题
- jQuery 表单提交事件处理程序不会被调用(chrome 扩展)
- 用Javascript处理表单提交事件,避免“;Form Processed”;
- 使用主干网中的输入捕获表单提交事件
- 如何在表单提交事件中从PHP调用javascript函数
- 如何使用JavaScript确认对话框菜单触发表单提交事件
- jquery/javascript:在iframe中捕获表单提交事件
- 在表单提交事件监听器中执行回调
- 从输入订阅表单提交事件
- 防止默认的表单提交事件从触发,如果javascript使用jquery启用
- 监听所有表单提交事件,并在任何其他附加事件处理程序之前执行一个函数
- 监听所有表单提交事件,包括动态添加的表单