从html提交外部提交时验证

时间:2017-08-29 09:10:57

标签: javascript jquery angularjs html5

我有一个包含许多不同输入字段的表单(其中一些不是真正的输入,但表现为输入)。

当从常规按钮提交from时,单击每个字段将通过角度验证和html验证 - 例如required,ng-maxlength,minlength等。

现在我们要添加一个快捷方式,以便在键盘上单击提交表单。该代码从html后面的控制器运行。如何从那里检查表格的有效性?我知道我可以通过document.forms["myForm"]获取表单,但是我能否以某种方式使用它来检查有效性。$ valid是否在html中工作?我能以某种方式在html上显示错误消息吗?

我试图为此添加jQuery验证插件,但似乎改变整个验证机制的工作太多了

1 个答案:

答案 0 :(得分:1)

请不要使用document.forms["myForm"]"获取表单。 在控制器中使用DOM操作是不好的做法。 您可以使用$scope.myForm访问表单。但要注意它将异步初始化。 但是,当您想要在键盘点击后访问表单时,这不应该是一个问题。 当您使用$scope.myForm访问表单时,您可以迭代抛出$$controls。在这个对象中都是表单字段。 例如,您可以这样做:

angular.forEach($scope.myForm.$$controls, function(value, key) {
    value.$setDirty();
    value.$setTouched();
});

当你使用angular don时,还有一个提醒,请尝试使用JQuery。如果你想使用插件搜索角度插件