Angular js 表单在不应该提交的时候提交
Angular js form submits when it shouldn't
我有一个 AngularJS 表格,如下所示:
<form ng-submit="vm.update(vm.model)">
.. fields
<button ng-click="vm.addCluster()">Add</button>
.. more fields
<input type="submit" value="Save" />
</form>
当我点击提交时,它按预期工作 - update()
方法被调用。当我单击该按钮时,它会调用 addCluster()
,但在提交表单后会自动调用 update()
。
为什么会这样,我该如何预防?
表单中的按钮(没有指定type
)的默认行为是提交,您可以将按钮的type
设置为button
来改变这个行为
<button type="button" ng-click="vm.addCluster()">Add</button>
我相信你可以像这样给按钮一个额外的属性
<button type="button">Your button</button>
type="button" 应该可以防止不需要的表单提交。
我有一个 AngularJS 表格,如下所示:
<form ng-submit="vm.update(vm.model)">
.. fields
<button ng-click="vm.addCluster()">Add</button>
.. more fields
<input type="submit" value="Save" />
</form>
当我点击提交时,它按预期工作 - update()
方法被调用。当我单击该按钮时,它会调用 addCluster()
,但在提交表单后会自动调用 update()
。
为什么会这样,我该如何预防?
表单中的按钮(没有指定type
)的默认行为是提交,您可以将按钮的type
设置为button
来改变这个行为
<button type="button" ng-click="vm.addCluster()">Add</button>
我相信你可以像这样给按钮一个额外的属性
<button type="button">Your button</button>
type="button" 应该可以防止不需要的表单提交。