【问题标题】:sending me duplicate data向我发送重复数据
【发布时间】:2016-09-23 23:13:33
【问题描述】:

我正在实现 dropzone um 页面,并且在每个 iamge 中我需要添加一个标题和描述,但是当我尝试发送多张照片时,不是每个请求或图像都有一个标题,而是给了我所有相同的名称。

我的代码:

 $('#submit').on('click',function(e){
     e.preventDefault();
     myDropzone.processQueue();
 });

 Dropzone.autoDiscover = false;
 // Dropzone class:
 var myDropzone = new Dropzone("div#myId", {
    url: "/products",
    autoProcessQueue:false,
    previewTemplate: "<div class=\"dz-preview dz-file-preview\">\n  " +
    "<div class=\"dz-image\"><img data-dz-thumbnail /></div>\n " +
    "<input type=\"text\" id=\"title\" data-dz-title name=\"dz-title\">\n " +
    "<input type=\"text\" id=\"url\" name=\"dz-url\">\n " +
    " <div class=\"dz-details\">"

}).on("sending", function(file, xhr, formData) {
    formData.append("title", $('#title').val());
});

【问题讨论】:

  • .on("sending", function(file, xhr, formData) { $( "#title" ).each(function() { formData.append("title", $( this ).val()); });
  • 不行,试试吧。

标签: javascript php dropzone.js


【解决方案1】:

您的 ID 不是唯一的,因此您无法可靠地从 ID 选择器获取输入数据。

将模板中输入的 ID 更改为如下类:

previewTemplate: "<div class='dz-preview dz-file-preview'>\n  " +
    "<div class='dz-image'><img data-dz-thumbnail /></div>\n " +
    "<input type='text' class='dz-brand' value='This is the text'> \n " +
    "<input type='text' class='dz-url'>\n </div>"

然后在发送事件中添加参数,这将在上传时获取输入值。

myDropzone.on("sending", function(file, xhr, formData) {
    formData.append('brand'      , $(file.previewElement).find('.dz-brand').val());
    formData.append('url'        , $(file.previewElement).find('.dz-url').val());
    formData.append('description', 'small detail');
});

【讨论】:

    猜你喜欢
    • 2019-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多