我需要表单上onsubmit
属性的功能-即当我调用此onsubmit
函数时,它必须返回truthy以便表单发布。然而,我想用一个angular函数调用来做到这一点,沿着所示:
<form id="form-submit-canvas" autocomplete="on" enctype="multipart/form-data" accept-charset="UTF-8" method="POST" onsubmit="{{FormSubmit.validate()}}" action="{{FormSubmit.SUBMIT_URL}}" novalidate>
然而,上面给出了关于在onsubmit
上使用插值的错误。我尝试放入ng-submit
,它不工作,因为我设置的action
属性被覆盖。
4条答案
按热度按时间bjg7j2ky1#
不知道它是否对你仍然有效,但因为我一直在与类似的问题作斗争。
下面的答案把我带到了正确的轨道上:https://stackoverflow.com/a/17769240/1581069
所以,总结一下所需的步骤:
1.你应该在你的
onsubmit
中调用纯JavaScript(无Angular 的),像(请注意:如果返回false,则不会提交表单):validate()
方法应该是前面提到的方法(在Angular 控制器中实现)。externalValidate()
应该在任何Angular 特定的组件之外实现。validate()
方法返回正确的结果(以防止表单提交)。可能是这样的:qnzebej02#
尝试使用
ng-submit
属性而不是onsubmit
。相关建议:Angular不支持许多属性。你应该找到ng-
等价的属性,你想使用它来让Angular正确地对它们做出React。示例:
其中
ng-submit
中的validate()
方法是在$scope
上声明的方法。下面是一个相关教程:AngularJS Tutorial (
ng-submit
)polhcujo3#
我知道这可以帮助一些人寻找如何在Angular中使用提交表单操作。我正在使用Angular 13,这是我们如何捕获提交操作:
参考资料在这里
myss37ts4#
return angular.element(this).scope().validate();“使用Angular 验证功能。