angularjs - 来自 Controller 的引用 Angular ng-form

标签 angularjs

如何从我的 Controller 中引用 ng-form 对象?

我有

<ng-form name="myForm">
</ng-form>

HTML 页面上的此代码工作正常
 {{myForm.$valid}}

根据情况返回 true 或 false。

但我想要的是从 Controller 中的函数内检查表单的状态,例如在发布数据或检索数据之前。

我试过了
$scope.myForm.$valid

但这不存在。也没有提到 myForm $scope 中的对象本身。
ng-formng-repeat 中使用,所有这些都在一个普通的 HTML 表单对象中,这就是使用它的原因。

正如我所说,myForm.$invalid用于控制 HTML 页面上该表单内的显示/启用控件就好了。

有任何想法吗?

最佳答案

在提交时检查表单是否有效的一种方法是通过 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

关于angularjs - 来自 Controller 的引用 Angular ng-form,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27816603/

相关文章:

angularjs - Angular 用户界面 Bootstrap : not loading templates

javascript - 将键对象与javascript和angularjs中的字符串值进行比较

javascript - Angular JS 在 div 中发布 ajax 后显示用户错误消息

javascript - 从 Controller Angular 传递数组

javascript - 对数组的两个对象进行 Angular 过滤

javascript - 仅针对一个 Controller 未定义 Angular 服务字段

javascript - Angularjs 从列表创建 div 网格

javascript - 根据条件动态地将脚本添加到我的应用程序

angularjs - Protractor 测试和 UI 路由器不等待解决

node.js - Express 4、NodeJS、AngularJS 路由