我需要一個幫助。實際上,當通過使用Angular.js動態獲取字段名稱來驗證輸入字段時,我得到以下錯誤。無法使用Angular.js動態驗證輸入字段的名稱
Error:
TypeError: Cannot read property '$invalid' of undefined
我下面解釋我的代碼。
<form name="billdata" id="billdata" enctype="multipart/form-data" novalidate>
<div ng-repeat="mul in mulImage">
<input type="file" class="filestyle form-control" data-size="lg" name="upload_{{$index}}" id="bannerimage_{{$index}}" ng-model="mul.image" ngf-pattern="'image/*'" accept="image/*" ngf-max-size="2MB" ngf-select="onFileSelect1($index);">
</div>
<input type="button" class="btn btn-success" ng-click="saveResturantDetails(billdata);" id="saveData" value="Save" style="margin-right:20px;"/> </div>
</form>
我在這裏上傳多張圖片,當用戶點擊save
按鈕應該先驗證。我在下面解釋我的控制器端代碼。
$scope.saveResturantDetails=function(billdata){
if(billdata.$valid){
}else{
if(angular.isDefined($scope.mulImage)){
for(var i=0;i<$scope.mulImage.length;i++){
var name='upload_'+i;
if(billdata.name.$invalid){
alert('Please add the valid image(i.e-.png or .jpeg) of size upto 2 mb max in image field'+(i+1));
return false;
}
}
}
}
}
其實我得到的錯誤在這if(billdata.name.$invalid)
實際上它不能採取適當的名字。如果我寫這樣的「billdata.upload_0。$無效」其工作的罰款。但是,我需要動態地附加名稱。請幫幫我。
我喜歡的對象添加到我的DOM,這樣我可以想像正在發生什麼,因爲我使用的形式。也許嘗試添加'
'你的看法? –