【发布时间】:2013-04-16 04:16:53
【问题描述】:
考虑一个包含三个按钮的表单:
<form ng-submit="updateUser()">
<div>Name <input type="text" ng-model="userToEdit.name" /></div>
<div>
<button class="btn btn-primary" ng-click="updateUser()">Save</button>
<button class="btn" ng-click="cancelEdit()">Cancel</button>
<button class="btn btn-danger" ng-click="deleteUser(userToEdit)"><i class="icon-trash"></i> Delete</button>
</div>
</form>
当我单击取消时,将调用 cancelEdit(),然后调用 updateUser()。我不希望调用 updateUser() 方法。有没有办法抑制这种表单提交(最好不使用 jQuery?)
注意:我仍然希望能够按 Enter 并默认执行保存操作。
【问题讨论】:
-
你能不能尝试定义一个type="submit"的按钮,看看是否只有点击那个按钮时才会触发提交?
-
我删除了 ng-submit 并将 type="submit" 添加到“保存”按钮,然后在专注于文本框时按 Enter 并没有提交我的表单。
-
如果您在按钮上指定 type="submit",您的表单上必须有 ng-submit 指令,并且您不需要 ng-click 提交按钮。
标签: angularjs