這是ngModelController,根據屬性如require
在Angular中進行驗證。但是,目前不支持使用ng-model服務的input type="file"
。爲了得到它的工作,你可以創建一個指示是這樣的:
app.directive('validFile',function(){
return {
require:'ngModel',
link:function(scope,el,attrs,ngModel){
//change event is fired when file is selected
el.bind('change',function(){
scope.$apply(function(){
ngModel.$setViewValue(el.val());
ngModel.$render();
});
});
}
}
});
示例標記:
<div ng-form="myForm">
<input id="userUpload" ng-model="filename" valid-file name="userUpload" required type="file" accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
<button ng-disabled="myForm.$invalid" type="submit" class="btn btn-primary"><i class="icon-white icon-ok"></i> Ok</button>
<p>
Input is valid: {{myForm.userUpload.$valid}}
<br>Selected file: {{filename}}
</p>
</div>
退房my working plnkr example。
將這項工作? – Moiz 2013-04-25 08:08:44
是的,如果你遵循的角度ie指南http://docs.angularjs.org/guide/ie – joakimbl 2013-04-25 08:11:53
我已經包括SHIV的IE瀏覽器。我打算把這個代碼放在這個工作上? – Moiz 2013-04-25 08:13:14