当我尝试使用角度验证从文件类型输入上传图像时,它显示错误并且不会通过
<input type="file" name="displaypic" ng-model="displaypic" ng-pattern="/\.(jpe?g|png|gif|bmp)$/i" ng-required="true" />
<span ng-show="SignupForm.displaypic.$error.pattern">* Must be an Image</span>
用css作为
input.ng-invalid.ng-touched{border: 2px solid red;}
它没有显示$error.pattern
的错误,只是获取了无效文件的CSS并且没有让表单提交
答案 0 :(得分:0)
你必须使用指令 在控制器中创建一个对象
$scope.file={};
$scope.file.fileDetail={};
<input type="file" fileUpload filetoread="file.fileDetail" />
.directive("fileUpload ", [function () {
return {
scope: {
filetoread: "="
},
link: function (scope, element, attributes) {
element.bind("change", function (changeEvent) {
var reader = new FileReader();
reader.onload = function (loadEvent) {
scope.$apply(function () {
scope.filetoread= loadEvent.target.result;
});
}
reader.readAsDataURL(changeEvent.target.files[0]);
});
}
}
}]);