jquery - IE 11 中 FormData 出现未定义错误

标签 jquery angularjs

我正在尝试在 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/

相关文章:

javascript - Bootstrap jQuery 日历

javascript - AngularJS 中的路由更改和 Controller 继承

c# - 如何在 JSON 响应 ASP.NET Core 中关闭或处理 camelCasing?

javascript - 我正在与 requirejs 优化器和非 AMD 模块作斗争

javascript - AngularJs中模型更新时如何刷新多选框

javascript - 使用 ngStorage 进行 Protractor 测试

javascript - $httpProvider 的转换请求中未定义参数 'data'

javascript - 固定定位的滚动弹跳

JavaScript 或 jquery 错误

javascript - jQuery ajax 请求仅在第二次调用时返回值