Dropzone:返回AJAX调用后如何发送文件

时间:2015-08-18 15:15:54

标签: php jquery ajax dropzone.js

我目前正在构建CRM php工具。实际上这个工具工作得很好。 但是缺少一个功能。我想用上传文件系统改进这个工具。 我找到了Dropzone.js。 这就是我想要的。但是我有一个问题要实现它。

我的问题是我想要返回ajax调用(即MySQL表中的INSERT的Id),并在url dropzone中注入此ID。 有了这个ID,我想创建目录并在MySQL Table中插入上传文件的历史记录。 ajax调用返回工作正常。我得到了插入的ID。

所以我的问题:

  • 此时是否可以发送文件而不是之前?
  • 对我来说这是一个不错的选择吗?

我的表格:

<form class="form-horizontal" role="form" id="formAjoutDemande">
    [input field]
    <button type="button" class="btn btn-success btn-lg" id="ajouterNouvelleDemande"><i class="fa fa-check"></i> Ajouter</button>
</form>

单击按钮“Ajouter”后的JQuery代码:

jQuery('#ajouterNouvelleDemande').click(function(event)
{
    [condition / verification]
    if (erreur > 0)
        return(false);
    else
    {
        var url = jQuery(location).attr('href')+'/?_ajoutDemande=true'+chaineAjoutDemande;
        jQuery.ajax(
        {
            url: url
            ,dataType: 'text'
            ,success : function(data)
            {
                if (data == 'insertionDemandeErreur')
                {
                    jQuery('#affichageResultatExecutionCommande').show();                                   jQuery('#affichageResultatExecutionCommande').load(jQuery(location).attr('href')+'/?_affichageResultatCommande=true&typeResultat=demande&erreur=true&typeCommande=ajout');
                }
                else
                {
                [HERE THE CODE TO SEND FILE WITH DROPZONE]
                jQuery('#affichageResultatExecutionCommande').show();
                jQuery('#affichageDetailsDemandeSpecifique').show();
                jQuery('#affichageFormulaireCreationDemande').hide();
                jQuery('#affichageTitreAjoutNouvelleDemande').hide();
                }
            }
        }
    }
});

我在问之前阅读了规则,我应该把我的上传文件代码放进去,但是我完全失去了。

也许这是不可能的,我应该尝试找另一种方式。

谢谢你的答案。

1 个答案:

答案 0 :(得分:0)

很多Drys!

我很困惑,这很简单。

刚开始时,您的解决方案无效。 但是在dropzone.option中,我使用了默认选项,它有: autoQueue:false

在评论此行之后,它正在运作