我正在尝试在 Angular Js 中使用上传控件。该功能在 Chrome 中运行良好,但在 IE 11 中不起作用。 下面是使用的代码:
<div>
<input type="file" class="form-control" id="imageUploadfile" name="Imagefile" ng-files="getTheFiles($files)" accept="image/*" />
<input type="button" name="imageUploadButton" ng-click="uploadFiles()" value="Upload" />
</div>
在controller.js文件中,
var formdata;
$scope.getTheFiles = function ($files) {
formdata = new FormData();
angular.forEach($files, function (value, key) {
formdata.append(key, value);
});
};
$scope.uploadFiles = function () {
TestAPIService.postUploadImage(formdata).success(function (response) {
var imageurl = _TestBaseUrl + 'Images/' + response.filePath.split(/(\\|\/)/g).pop();
$scope.testTypeImage_url = imageurl;
}).error(function (response) {
alert(response.responseText);
});
};
上面的代码在 Chrome 中运行良好,我可以上传文件。错误出现在 formdata 中,因为未添加“键、值”。
如何解决这个问题? 谢谢
最佳答案
这对我有用,
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
使用“IE=edge”,它将指示 IE 使用最新的可用文档模式。建议在专门涉及 JQuery/Ajax 实现的网页中添加此元标记。
关于jquery - IE 11 中 FormData 出现未定义错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41391311/