本文介绍了required属性不使用文件输入工作中的js角的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在form.I文件上传控制在用角JS。
当我把所需要的属性,以验证该文件被选中它不工作。
I have a file upload control in my form.I am using Angular JS .When I put the required attribute to validate that the file is selected it is not working.
<input id="userUpload" name="userUpload" required type="file" accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
<button type="submit" class="btn btn-primary"><i class="icon-white icon-ok"></i> Ok</button>
能否请你说明为什么需要的是不工作?
Can you please suggest why the required is not working ?
推荐答案
这是 ,做的角度验证基于像属性要求
。但是,目前还为输入类型=文件
通过NG-模式服务的支持。得到它的工作,你可以创建一个这样的指令:
It's the ngModelController that does the validation in Angular based on attributes like require
. However, currently there is no support for input type="file"
with the ng-model service. To get it working you could create a directive like this:
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>
查看。
这篇关于required属性不使用文件输入工作中的js角的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!