Javascript Ember.js TextField操作提交表单
我有以下表格:Javascript Ember.js TextField操作提交表单,javascript,jquery,forms,ember.js,Javascript,Jquery,Forms,Ember.js,我有以下表格: <form class="form-horizontal" {{action "formSubmit"}}> <div class="form-group"> <label>User:</label> {{input type="text" value=user action="findUser"}} </div> <div class="form-group
<form class="form-horizontal" {{action "formSubmit"}}>
<div class="form-group">
<label>User:</label>
{{input type="text" value=user action="findUser"}}
</div>
<div class="form-group">
<label>Notes:</label>
{{input type="text" value=notes}}
</div>
<button type="submit" class="btn btn-primary">Save</button>
</form>
用户:
{{input type=“text”value=user action=“findUser”}
笔记:
{{input type=“text”value=notes}
拯救
正如您所注意到的,我对该表单有两个操作:
findUser
操作formSubmit
操作findUser
操作,但也会触发formSubmit
。据我所知,这是表单通常的行为方式。在文本字段上按enter键时,它将提交表单
这种行为有解决办法吗?当我在用户文本字段上按enter键时,我希望触发findUser
操作,但不提交表单
请提供帮助。一个解决方法是删除表单本身。您可以对按钮进行操作。您可能不得不牺牲一些与表单相关的功能,但仍然可以很好地工作。这是jsbin 也许还有其他更好的方法
<div class="form-group">
<label>User:</label>
{{input type="text" value=user action="findUser" bubbles=false}}
</div>
<div class="form-group">
<label>Notes:</label>
{{input type="text" value=notes}}
</div>
<button type="submit" class="btn btn-primary" {{action "formSubmit"}}>Save</button>
另一种允许使用表单的解决方法: 只需将'onkeypress=“return event.keyCode!=13;”添加到表单元素中,并将{{action}放在按钮本身上:
用户:
{{input type=“text”value=user action=“findUser”}
笔记:
{{input type=“text”value=notes}
拯救
App.IndexController = Ember.Controller.extend({
actions: {
findUser: function(){
console.log('Find User');
},
formSubmit: function(){
console.log('Form Submit');
}
}
});