【发布时间】:2018-02-12 16:10:39
【问题描述】:
<li ng-repeat="item in quantityList track by $index" ng-model="isPageValid='true'">
<input value="item.quantity" ng-blur="validateQuantity(item)" ng-model="item.quantity">
</li>
每次发生 ng-repeat 循环时,我都会尝试为状态变量设置默认值。我已经尝试过 ng-model,但这不起作用。例如,
- 我想在每次运行 ng-repeat 循环之前设置 isPageValid="true"。 'True' 将是默认值,验证函数将测试是否应将 isPageValid 设置为 'false'。
- 我希望每次执行 ng-blur 时都运行 ng-repeat 循环。
注意:我理解我使用 ng-model 的方式不正确,但这只是为了说明问题。
HTML:
<li ng-repeat="item in quantityList track by $index" ng-model="isPageValid='true'">
<input value="item.quantity" ng-blur="validateQuantity(item)" ng-model="item.quantity">
</li>
JS:
scope.validateQuantity = function(item){
var qty = item.quantity;
if(parseInt(qty) >=1 && parseInt(qty) <= 200){
item.isQuantityValid = true;
}else{
item.isQuantityValid = false;
scope.isPageValid = false;
}
}
循环创建一个输入框列表。目标是创建一个名为 isPageValid 的全局验证值,如果 JS 对任何输入框的验证失败,则该值是“假”。注意,当执行 ng-blur 时,JS 验证运行并且循环应该重新运行。
【问题讨论】:
-
HTML 代码发布不正确。这里是:
-
-
-
Edit 您的问题并通过点击 "JavaScript/HTML/CSS sn-p" 在底部发布您的完整当前
code snippeti> 图标。 -
它是否适合创建过滤器?
标签: angularjs angularjs-ng-repeat