Javascript 从html提交之外提交时验证来自

Javascript 从html提交之外提交时验证来自,javascript,jquery,angularjs,html,Javascript,Jquery,Angularjs,Html,我有一个包含许多不同输入字段的表单(其中一些字段不是真正的输入,而是作为输入) 从常规按钮提交时,单击每个字段都会通过角度验证和html进行验证,如required、ng maxlength、minlength等 现在我们想添加一个快捷方式,通过键盘单击提交表单。该代码是从html后面的控制器运行的。我如何从那里检查表格的有效性?我知道我可以通过document.forms[“myForm”]获取表单,但是我可以用它来检查有效性,就像.valid在html中工作一样吗?我可以在html上显示错误

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

从常规按钮提交时,单击每个字段都会通过角度验证和html进行验证,如required、ng maxlength、minlength等

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


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

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

angular.forEach($scope.myForm.$$controls, function(value, key) {
    value.$setDirty();
    value.$setTouched();
});
还有一个提醒,当你使用angular时,不要尝试对所有东西都使用JQuery。如果你想使用插件,请搜索angular插件