ng-submit和ng-click之间的差异

MrM*_*sen 38 submit form-submit angularjs angularjs-ng-click

在angularjs中,我想知道ng-submit和ng-click之间的区别是什么?具体来说,每个人的利弊何时应该是一个还是另一个?谢谢!
**编辑**
我已经对此进行了一些调查,但我仍然想知道使用ng-submit的好处是什么(如果有的话)?您是否可以使用ng-click代替所有ng-submit?这会导致任何问题吗?再次感谢!

AND*_*ILL 39

ngSubmit指令绑定到浏览器中的submit事件,该事件在提交表单时触发.

来自MDN:

请注意,仅在表单元素上触发提交,而不是按钮或提交输入.(提交表格,而不是按钮.)

因此,您可以使用它来提交用户注册表单或类似的内容.

另一方面,ngClick指令可以应用于任何类型的元素.

来源:

ngClick指令允许您在单击元素时指定自定义行为.

使用它可以让您的用户以提交表单以外的某种方式与您的页面进行交互.也许点击"上一个"或"下一个"寻呼机按钮,或者可能是地图或其他东西.


Mst*_*san 24

Angular阻止默认操作(表单提交到服务器),除非该元素具有指定的action,data-actionx-action属性.因此,当使用带有这些属性的angular的ng时,ng-clickng-submit可用于指定要调用哪个javascript方法.在任一调用中,由于angular的双向数据绑定属性,您可以获取范围内的所有输入值. 您是否可以使用ng-click代替所有ng-submit?这会导致任何问题吗?
它可以使用但是当使用ng-click时它不会考虑html输入属性(如required,min-max,maxlength)并立即执行方法体.

  • 谢谢,这消除了误解.因此,对于提交表单,首选ng-submit.对于任何其他交互,ng-click是使用的内容. (2认同)

Aar*_*ray 16

我最喜欢使用的原因ng-submit是它允许你<Enter>在关注表单输入等时按下键,表单将提交.(当然假设你有一个type="submit"表格中的按钮.)

它比键盘更友好,更易于访问友好ng-click,因为ng-submit用户可以点击提交按钮或按下<Enter>.