我有一个ASP.NET MVC应用程序。由于应用程序中的其他jquery插件,此应用程序需要jQuery 2.1。我正在尝试为用户提供上传图片的方法。为了做到这一点,我看着jQuery file uploader。我的JavaScript看起来像这样:
$('#userPicture').fileupload({
dataType: 'json',
done: function (e, data) {
}
});
userPicture标记如下所示:
<input id="userPicture" type="file" name="userPicture" data-url="/pictures/User/@ViewBag.UserId">
页面最初加载时没有任何错误。当我选择一张图片时,我收到的错误是:
Uncaught Error: no such method 'process' for fileupload widget instance jquery-2.1.1.js:250
未显示图像预览。如何通过在IE 8 +
中运行的JQuery插件选择图片并显示客户端预览答案 0 :(得分:27)
我和Chrome有同样的问题,在我的情况下,问题似乎是缺少jquery插件“jquery.fileupload-process.js”,正如@jevgenig在他的评论中提到的那样。希望这可以帮助某人
答案 1 :(得分:2)
根据我检查的规格,jQuery 2.x支持IE9 +。
来源:http://jquery.com/browser-support/
所以jQuery 2.1不支持IE8。
如果你使用的是你提到的jQuery插件,那么对IE9的支持很少 - :
如果您支持现代浏览器(Firefox,Chrome,IE10 +):
以下是完整列表:
https://github.com/blueimp/jQuery-File-Upload/wiki/Browser-support
你的问题很可能与IE8的jQuery 2.1支持有关。
可能的解决方案:
1-使用较旧的jQuery版本。您可以将任何jQuery 1.6+与jQuery File Upload插件一起使用(来源:https://github.com/blueimp/jQuery-File-Upload)。 jQuery 1.x支持IE6 +,因此它支持IE8。
2-(推荐)摆脱IE8。将您的jQuery版本升级到最新的稳定版本。使用最新版本的jQuery File Upload插件。为IE8用户提供简单的HTML上传。