【问题标题】:jquery file upload throws an errorjquery文件上传抛出错误
【发布时间】:2014-09-29 19:40:30
【问题描述】:

我有一个 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 插件选择图片并显示客户端预览

【问题讨论】:

标签: javascript jquery asp.net-mvc


【解决方案1】:

我在 Chrome 上遇到了同样的问题,在我的情况下,问题似乎是缺少 jquery 插件“jquery.fileupload-process.js”,正如@jevgenig 在他的 cmets 中提到的那样。希望这可以帮助某人

【讨论】:

    【解决方案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

    你的问题很可能与 jQuery 2.1 对 IE8 的支持有关。

    可能的解决方案:

    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 上传。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-17
      相关资源
      最近更新 更多