我有html模板,其中包含复选框输入,并且在组中至少选择了其中一个模板以传递所需的验证。
HTML:
<input class="cb" type="checkbox" value="1" ng-model="form.cb.one"
ng-required="showRequired" ng-change="handleClick()">one</input>
<input class="cb" type="checkbox" value="2" ng-model="form.cb.two"
ng-required="showRequired" ng-change="handleClick()">two</input>...
JS:
$scope.showRequired=true;
$scope.form.cb = {one:false, two:true, three:false}
$scope.handleChange = function(){
$scope.showRequired = !($scope.chkCollection.one || $scope.chkCollection.two || $scope.chkCollection.three);
};
我打算在单击复选框时更改验证的ng-required属性,但由于它是模板,因此它可能具有在页面上其他位置使用的相同变量名称($ scope.showRequired),这可能会影响其他必填字段。如何解决这个问题呢?感谢
答案 0 :(得分:0)
是否需要检查其中一个form.cb组?
如果您需要进行更多验证,可以在考虑showRequired
的{{1}}行之后执行此操作:
showRequired
和js:
<input class="cb" type="checkbox" value="1" ng-model="form.cb.one"
ng-required="showRequiredCheckbox()" ng-change="handleClick()">one</input>
<input class="cb" type="checkbox" value="2" ng-model="form.cb.two"
ng-required="showRequiredCheckbox()" ng-change="handleClick()">two</input>...