2015-09-21 42 views
2

我在UI上嵌套和重複表單。問題當設置父表單有效通過設置每個子表單域有效

<form class="form-horizontal" name="Registration"> 
    <form ng-repeat = "s in students" name="studentRegisteration"> 
    <input type="number" id="input" name="input" model="input" ng-change="validate()"> 
    </form> 
</form> 

我想$setValidity()兒童格式的特定領域如下

$scope.validate = function (index) { 
    if (condition true) 
    $scope.Registration.studentRegisteration.input.$setValidity('integer', false); 
} 

它正常工作,直到我有一個表單上的用戶界面,即設置成功整數(屬性)有效,並最終母公司表格變得有效。

它不起作用當我有UI上的多個窗體...父窗體不會變得有效...我不知道如何設置字段有效的個別子窗體,以便父母變得有效。

任何想法?

回答

2

我想如果你通過函數參數爲validate的窗體控制器它將工作。喜歡的東西

<form class="form-horizontal" name="Registration"> 
    <form ng-repeat = "s in students" name="studentRegisteration"> 
    <input type="number" id="input" name="input" model="input" ng-change="validate(Registration.studentRegisteration)"> 
    </form> 
</form> 

代碼:

$scope.validate = function (form) { 
    if (condition true) 
    form.input.$setValidity('integer', false); 
} 

我不知道,如果你通過Registration.studentRegisterationstudentRegisteration,同時嘗試

+0

好吧,讓我來試試這個。 – immirza

+0

優秀的男人。它工作得很好。僅供參考,我通過了studentRegisteration,因此不需要通過Registration.studentRegisteration。謝謝 – immirza