访问重复之外的ng重复ng形式
Access ng-repeat ng-form outside of the repeat
我有一个按钮和一个表。如果任何一行无效,我想禁用该按钮。我该如何做到这一点?
///// This doesn't work, I have no access to myForm /////
<button ng-disabled="myForm.$invalid">Save</button>
<table>
<tr ng-repeat="item in items" ng-form="myForm">
<td>
<input type="text" name="description" value="{{value.description}}" />
</td>
</tr>
</table>
编辑:将整个表格包装成一个表格,结果如下:http://pasteboard.co/FJccNeg.png
您需要多种东西:
- 具有表单标记以便启用验证。使用novalidate属性禁用broswer默认验证
- 每个输入只使用一个名称,为此,我们将使用ng repeat提供的$index,以便每个输入都有自己的验证
- 在下面的示例中添加一些可能触发验证错误的内容。我添加了必需的属性。因此,只要至少有一个字段为空,该按钮就会被禁用
angular.module("app", []).controller("ctrl", function($scope){
$scope.items=[{description:"toto"},{}];//on with already existing one with empty
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app">
<form name="myForm" ng-controller="ctrl" novalidate><!-- mandatory -->
<button ng-disabled="myForm.$invalid">Save</button>
<table>
<tr ng-repeat="item in items" ng-form="myForm">
<td>
<input type="text" name="{{'description'+$index}}" ng-model="item.description" required/>
</td>
</tr>
</table>
</form>
</div>
首先,您应该定义一个带有name参数的表单,然后创建带有name paramaeter的输入字段。然后,您可以使用表单名称和输入名称参数来访问输入的错误。
<form name="myForm" ng-controller="FormController" class="my-form">
userType: <input name="input" ng-model="userType" required>
<span class="error" ng-show="myForm.input.$error.required">Required!</span><br> >
<button ng-disabled="myForm.input.$error.required>"
</form>
我不知道你对每一行的表单做了什么,但为了在表单无效时停用按钮,你必须将按钮包装在表单中:
<form name="myForm">
<input name="description" type="text" ng-model="description" required />
<button ng-disabled="myForm.$invalid">Save</button>
</form>
如果你不能把你的按钮放在这个表格里,那么你不能使用角度魔法,所以使用它没有多大意义只有一半。
在你的控制器里有一组输入ng模型,检查所有模型是否有效,然后设置一个值true/false来停用你的按钮。
相关文章:
- 角度:在ng重复上切换图像
- 角度的项目列表 ng 重复,ng 单击显示全宽描述
- 防止ng重复中的重复值(AngularJS)
- 从键值结构中获取数据,并将其与AngularJS中ng重复的值进行比较
- 在ng重复循环中显示来自不同文件夹的图像
- 在ng重复循环中显示条件内容的最佳方式是什么
- 离子2:在离子载玻片内产生ng重复
- 正在ng重复元素上添加事件
- 嵌套ng重复angularjs
- ng模型内的ng重复的ng重复开始
- 混合元素的有角度的ng重复
- 如何避免在angular上多次调用方法;s ng重复
- 在表格格式中使用ng重复
- AngularJS ng重复处理空列表事例
- 如何在AngularJS-ng重复循环中将长JSON路径缩短为变量
- Angular在与ng重复作斗争
- ng重复中的ng模型-初始化唯一作用域属性
- ng重复变量到ng模型
- 尝试使用ng重复时出现空白屏幕
- 如何防止由ng重复引起的net::ERR_INSUFICIENT_RESOURCES错误