使用Backbone.js,我有一个表单如下:
<form id="searchBar">
<input type="search" name="search" id="searchBox" value=""/>
<input type="text" name="location" id="location" value="City, ST"/>
</form>
Run Code Online (Sandbox Code Playgroud)
并且,处理所述表格的视图如下:
window.FindPlaceView = Backbone.View.extend({
/*code here*/
events: {
"submit form#searchBar" : "processClick"
},
processClick: function(e) {
e.preventDefault();
console.log("Submitted");
/*form processing code here*/
}
});
Run Code Online (Sandbox Code Playgroud)
如果我删除表单中的第二个输入字段,表单将提交输入就好了.一旦我将第二个输入添加回表单,就没有骰子.绑定似乎在那时失去了.
是否有任何理由为什么在表单中有两个字段会在提交事件绑定上抛出一个循环?这看起来像是一个愚蠢的问题,我正撞在墙上.
我已经尝试将输入设置为不同的类型,从中删除所有属性,一切.即使我<input></input>在这里放空,也会打破.
(我应该注意,我这里没有提交按钮,只是尝试提交输入)
想法?
谢谢.
您的问题与backbone.js无关,但浏览器的工作原理如何:
从Jquery提交方法文档:
根据浏览器的不同,如果表单只有一个文本字段,或者只有存在提交按钮时,Enter键才会导致表单提交.除非通过观察按下Enter键的按键事件来强制解决问题,否则界面不应该依赖于此键的特定行为.
当然有关于它的问题:
在这里,您可以找到一些解决方法,如何在没有提交按钮的情况下在Enter上提交表单:
| 归档时间: |
|
| 查看次数: |
1356 次 |
| 最近记录: |