所以我想驗證ng-repeat中的一個項目的輸入。例如,爲了說明我有5個項目(1,2,3,4,5),我只想驗證表單,如果第4項被選中。ng-repeat中的AngularJS表單驗證
我用NG模式之前驗證形式,而不是一個有一個下拉菜單選擇item.name
我已經包括了我想第4項與NG內部驗證的正則表達式-模式。
<div>
<select name="name" ng-model="item.name" ng-options="item for item in items" required></select>
</div>
<div>
<input name="results" type="text" ng-model="item.results" ng-pattern="/^\d\d\d\/\d\d\d/" required>
</div>
有關驗證此情況的正確方法的任何建議將不勝感激。我曾經想過創建一個指令來驗證這個,但是這感覺就像是一個過於複雜的解決方案,因爲我不會在這個應用程序中多次使用該指令。
////////////////////////////////////////////// ////
它不會讓我回答我的問題所以在這裏我找到了答案。
我最終什麼事不得不做的是使用NG模式,並通過它的功能。
<input name="results" type="text" ng-model="vital.results" ng-pattern="vitalRegEx()" required>
這裏是控制器代碼
$scope.item4RegEx = /^\d{2,3}\/\d{2,3}$/;
$scope.itemRegEx = function() {
if($scope.item && $scope.item.name === "fourth item")
return $scope.item4RegEx;
else return (/^$/);
};
您可以編寫一個指令,在選擇小部件的select或blur事件上執行一個函數。 – mpm