如何在控制器中引用ng-form对象?
我有
<ng-form name="myForm">
</ng-form>
HTML页面上的这段代码可以正常使用
{{myForm.$valid}}
视情况而定返回true或false。
但我想要的是从控制器的功能中检查表单的状态,例如在发布数据或检索数据之前。
我试过了
$scope.myForm.$valid
但这不存在。在myForm
本身中也没有对$scope
对象的引用。
ng-form
在ng-repeat
中使用,所有这些都在普通的HTML表单对象中,这就是使用它的原因。
正如我所说,myForm.$invalid
用于控制HTML页面上该表单中的显示/启用控件。
有什么想法吗?
答案 0 :(得分:2)
在提交时检查表单是否有效的一种方法是将myForm.$valid
传递给提交函数:
<ng-form name="myForm" ng-submit="test(myForm.$valid, obj)">
<input type="text" name="test" ng-model="obj.user" required>
<input type="submit" ng-click="test(myForm.$valid, obj)" ng-disabled="!myForm.$valid">
</ng-form>
和测试功能:
$scope.test = function($valid, obj) {
if (!$valid) return;
console.log(obj);
}
<强> plnkr 强>