Dropzonejs无法正常提交

时间:2015-12-29 13:39:59

标签: javascript dropzone.js

这是我的dropzone配置:

var myDropzone = new Dropzone(".myDZ", {
    url: $('#form').attr('action'), 
    previewTemplate: previewTemplate,
    uploadMultiple: true, 
    previewsContainer: "#previews", 
    clickable: "#fileinput-btn", 
    autoProcessQueue: false,
    init: function() {
        var dz = this;
        this.element.querySelector("button[type=submit]").addEventListener("click", function (e) {
            e.preventDefault();
            dz.processQueue();
        });
    }
});

按下提交按钮后,我可以从后端看到数据已正确提交。但是,在后端返回响应后,前端不会对其做出反应。表单页面保持不变,不显示返回的消息,再次单击提交按钮不会触发任何提交。

我试过了:

this.element.querySelector("button[type=submit]").addEventListener("click", function (e) {
            e.preventDefault();
            dz.processQueue();
            document.getElementById("form").submit();
        });
    }
});

这将强制表单提交两次,但在第二次尝试后显示正确的响应。这有效,但感觉不对。

有关可能出现的问题的任何建议?

1 个答案:

答案 0 :(得分:0)

我同意提交两次是很脏的。 您可能会尝试在成功函数中捕获您的响应,因为Dropzone正在异步等待。

Match description = Regex.Match(line, "^<div class=\"scrollable \"^(.*?)$div>", 
    RegexOptions.Multiline);//multiple line

if (description.Success)
{
    //Console.WriteLine(status_id.Groups[1].Value);
    System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\\Webasto\\csv-"+zahl+".txt");
    file.WriteLine(id.Groups[1].Value + ";4;4;" + subject.Groups[1].Value + ";" + due_date.Groups[1].Value+";NULL;"+status_id.Groups[1].Value+";"//+assigned.Groups[1].Value
        +";"
        +priority.Groups[1].Value+";NULL;"+autor.Groups[1].Value+";0;"+created_on.Groups[1].Value+";"+start_date.Groups[1].Value+";"+done_ratio.Groups[1].Value+";"+hours.Groups[1].Value
        +";NULL;"+id.Groups[1].Value+";1;2;0;"+closed.Groups[1].Value+";");
    file.Close();
}