Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 具有单功能的多个dropzone_Javascript_Jquery_Dropzone.js - Fatal编程技术网

Javascript 具有单功能的多个dropzone

Javascript 具有单功能的多个dropzone,javascript,jquery,dropzone.js,Javascript,Jquery,Dropzone.js,我有一个带有多个DropZone的表单用于图像上传。下面是我的代码: HTML 现在我有4个不同的Dropzone函数用于4个div。这是正常工作 事实上,在我的项目中,图像上传有很多用途&我将在不同的页面上多次使用Dropzone 我的问题是——我可以写一个Dropzone函数并传递Id、maxFiles、paramName、maxFilesize等参数值吗?可能是其他的,这样我就不必写多个Dropzone函数了 提前感谢。好吧,我不确定这是否是您想要的,但我想到的一件事是,您可以使用divs

我有一个带有多个DropZone的表单用于图像上传。下面是我的代码:

HTML

现在我有4个不同的Dropzone函数用于4个div。这是正常工作

事实上,在我的项目中,图像上传有很多用途&我将在不同的页面上多次使用Dropzone

我的问题是——我可以写一个Dropzone函数并传递Id、maxFiles、paramName、maxFilesize等参数值吗?可能是其他的,这样我就不必写多个Dropzone函数了


提前感谢。

好吧,我不确定这是否是您想要的,但我想到的一件事是,您可以使用divs id设置选项,然后在javascript中使用该id来配置dropzone元素

下面是一个通用示例,其中包含您在使用jQuery提问时提到的参数:

html:

<div class="dropzone" id="image-1-10-1"></div>
<div class="dropzone" id="image-2-20-2"></div>
<div class="dropzone" id="image-3-30-3"></div>
<div class="dropzone" id="image-4-40-4"></div>

我不确定我是否理解你的问题,你可以编写一个函数来接受你想要的参数,但无论如何你需要调用该函数4次。@wallek876-是的,我知道。我需要调用该函数4次。但是在我的dropzone函数中,有很多选项,我需要为每个div id写一次&再写一次。我想知道如何为同一个div id写一个函数。
$(function () {
    Dropzone.options.testImage1 = {
        url: "test1.php",
        maxFiles : 10,
        paramName: "file1", 
        maxFilesize: 2,
    }
    Dropzone.options.testImage2 = {
        url: "test2.php",
        maxFiles : 20,
        paramName: "file2", 
        maxFilesize: 10,
    }
    Dropzone.options.testImage3 = {
        url: "test3.php",
        maxFiles : 30,
        paramName: "file3", 
        maxFilesize: 20,
    }
    Dropzone.options.testImage4 = {
        url: "test4.php",
        maxFiles : 40,
        paramName: "file4", 
        maxFilesize: 5,
    }       
});
<div class="dropzone" id="image-1-10-1"></div>
<div class="dropzone" id="image-2-20-2"></div>
<div class="dropzone" id="image-3-30-3"></div>
<div class="dropzone" id="image-4-40-4"></div>
Dropzone.autoDiscover = false;

$('.dropzone').each(function(){
    var options = $(this).attr('id').split('-');
    var dropUrl = 'test' + options[1] + '.php';
    var dropMaxFiles = parseInt(options[2]);
    var dropParamName = 'file' + options[1];
    var dropMaxFileSize = parseInt(options[3]);

    $(this).dropzone({
        url: dropUrl,
        maxFiles: dropMaxFiles,
        paramName: dropParamName,
        maxFilesSize: dropMaxFileSize

        // Rest of the configuration equal to all dropzones
    });

});