程序化 dropzone 不显示图标

programmatic dropzone not showing icons

我使用 dropzone v4.0.0 并且正在动态加载一些 HTML 以编程方式将 dropzone 附加到。

HTML 看起来像这样:

<div id="dz"></div>

我的 CSS #dz 看起来像这样

#dz{
    margin-bottom:15px;
    width:calc(100% - 30px);
    height:200px;
    background:#f2f2f2; 
    text-align:center;
    line-height:200px;
}

我的 HTML 文件头中也有 dropzone.css 加载。

页面加载后,我想以编程方式将拖放区附加到它。 我是这样做的:

Dropzone.autoDiscover = false;
myDropzone = new Dropzone("#dz", { 
        url: "cgi/fileUpload.exe",
        maxFilesize:4,
        dictDefaultMessage:"drop files here or click to choose"
});

我的 dropzone 可以将文件拖入其中或单击并浏览文件,但 dropzone 图标不显示,上传的不良或良好的 X 和复选标记也不显示。文件上传的信息在页面下方,超过了#dz 的高度。我没有收到错误。

为什么?

解决方案是创建一个表单并附加到 div #dv

var dz='<form action="cgi/fileUploader.exe" ';
dz+='         class="dropzone"';            
dz+='         id="my-dropzone">';
dz+='</form>';  

$("#dz").html(dz);

setTimeout(function(){               
      Dropzone.autoDiscover = false; 
      var myDropzone = new Dropzone("#my-dropzone");
},500);