7

jQuery File Upload插件当前不显示所选文件。有谁知道我可以如何解决这个问题?

我已经实现了“自定义”模板(见下文);注意我不需要显示以前上传的材料,因此没有下载模板。

我已经检查(通过日志记录)add正在调用回调,并且正在调用uploadTemplate函数并返回预期值——由于某种原因,这些值根本没有附加到表示表中。

$('#fileupload').fileupload(
  acceptFileTypes: /(\.|\/)(gif)$/i
  uploadTemplateId: null
  downloadTemplateId: null
  uploadTemplate: (obj) ->
    rows = $()
    $.each(obj.files, (idx, file) ->
      temp = "<tr class='template-upload fade'><td class='preview'><span class='fade'></span></td><td class='name'></td>'<td class='size'></td>"
      if (file.error)
        temp += "<td class='error' colspan='2'></td>"
      else
        temp += "<td><div class='progress'><div class='bar' style='width:0%;'></div></div></td><td class='start'><button>Start</button></td>"
      temp += "<td class='cancel'><button>Cancel</button></td></tr>"
      row = $(temp)
      row.find('.name').text(file.name)
      row.find('.size').text(obj.formatFileSize(file.size))
      rows = rows.add(row)
      )
    return rows
  downloadTemplate: ->
    return $()
)

更新 10/16/2012 我在文件上传的初始化中添加了以下内容:

  process: [{action: 'load', fileTypes: /^image\/(gif|jpeg|png)$/, maxFileSize: 2000000}, {action: 'resize', maxWidth: 1920, maxHeight: 1200, minWidth: 800, minHeight: 600}, {action: 'save'}]

这确实会启动加载图像的尝试,但不幸的是,该尝试会导致以下错误。有谁知道是什么原因和/或如何解决它?

Uncaught TypeError: undefined (loadImage) is not a function jquery.fileupload-fp.js:87

4

4 回答 4

8

问题在于加载依赖项的顺序;Load Image需要在其他核心依赖项之前加载。

于 2012-10-26T16:10:40.960 回答
6

以正确的顺序加载依赖项解决了我的问题

  • 加载图像/加载图像.js
  • 加载图像/加载图像 ios.js
  • 加载图像/加载图像方向.js
  • 加载图像/加载图像-meta.js
  • 加载图像/加载图像exif.js
  • 加载图像/加载图像exif-map.js

    (或使用缩小版)

  • jquery.iframe-transport.js

  • jquery.fileupload.js
  • jquery.fileupload-process.js
  • jquery.fileupload-image.js
  • jquery.fileupload-audio.js
  • jquery.fileupload-video.js
  • jquery.fileupload-validate.js
  • jquery.fileupload-ui.js tmpl.js
  • 画布到blob.js
于 2014-02-18T02:10:03.777 回答
0

您是否安装了为 JQuery 文件上传列出的所有要求?

根据README,可选要求之一是

JavaScript 加载图像函数

于 2012-10-16T16:44:23.207 回答
-1

我的问题

它在 Mac 上运行良好,但在 Windows 上的 FireFox 和 IE 中无法运行

部分固定

我发现bootstrap.js在我的案例中包含了两次,一次在头文件中,第二次在 jquery 文件上传插件中。删除头文件中的那个将其修复到预览在页面刷新时显示但仍未显示的程度(bootstrap.js从 jquery 插件中删除并没有解决问题顺便说一句)

完全固定

挖掘了更多并尝试注释掉可能导致问题(冲突)的 .js 文件。typeahead.bundle.min.js通过从头文件中删除完全解决了我的问题。当添加图像而不需要刷新页面时,预览会在 IE 和 Firefox 中显示。

我还注释掉了jquery-ui.js页面上不需要的 btw,并发现了另一个重复的 js 文件以及清理过程的一部分。

密码错误

如果您将上传的文件存储在数据库中,如果数据库凭据错误,它将显示上传过程但不会看到预览。修复数据库凭据将修复预览问题。

于 2016-04-08T16:46:20.700 回答