【问题标题】:jQuery File Upload Plugin https://blueimp.netjQuery 文件上传插件 https://blueimp.net
【发布时间】:2018-11-16 16:41:09
【问题描述】:

晚上好, 我想使用插件 jQuery File Upload Plugin 但我有问题。 我使用的是base64图像,因为图像通过修剪工具来剪切图像。 如何通过 .fileupload () 上传和上传 base64 格式的图片 我需要一个 jquery / php 版本

我找不到解决方案,在此先感谢 真诚的

【问题讨论】:

标签: php jquery file-upload jquery-file-upload blueimp


【解决方案1】:

来自他们的文档:https://github.com/blueimp/jQuery-File-Upload/wiki/API#programmatic-file-upload

$('#fileupload').fileupload('add', {files: filesList});

第二个参数必须是一个带有数组(或类似数组)的对象 列表)文件或 Blob 对象作为文件属性。

听起来很简单:

var blob = ... //you said in the comments you've got the blob...
var blob = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';
$('#fileupload').fileupload('add', {files: [blob]})

现在,我还遇到了一些更复杂的代码 (source),表明这样的事情也是可能的:

$('#fileupload').fileupload({
    autoUpload: true,
    add: function (event, data) {
      $.ajax({
        url: "/upload",
        type: 'POST',
        dataType: 'json',
        data: {doc: {title: data.files[0].name}},
        async: false,
        success: function(response) {
          ...
        }

      });

看起来很灵活。

【讨论】:

  • 我不明白的是 $ ('# fileupload') 被赋予它是一个 blob 并命名 DOM html 的一个对象,所以我不知道如何适应它。
  • 对不起,我是新人:D
  • 如果我理解......你说你有一个带有base64字符串的变量,它是一个图像。为什么我们要讨论 DOM?这试图说明您可以传递 blob,就像将文件上传到表单的文件输入一样。
  • 如果我们看一下 $ ('# fileupload')。 Fileupload('add', {files: [blob]}) 我们可以看到函数fileupload 关联了一个dom $('#fileupload') 的元素。我不明白通过blob而不是DOM对象html。
  • 在我看来,该插件采用表单元素。 $ ('# fileupload) 是表单。
猜你喜欢
  • 2012-01-30
  • 2013-12-19
  • 1970-01-01
  • 2016-01-11
  • 2017-03-15
  • 1970-01-01
  • 1970-01-01
  • 2015-02-17
  • 1970-01-01
相关资源
最近更新 更多