好的,所以我的情况如下:我有一个页面,它有一个文本框输入(文件描述)和一个用于上传文件的dropzone组件。此dropzone配置为仅接受单个文件,并命中控制器方法,该方法将文件存储在光盘上,并在DB中为此文件创建条目。
应用程序需要接受多个文件,为了达到这个目的,我在第一个dropzone的on(“success”)方法中调用另一个函数,将另一个textbox + dropzone组合添加到DOM。显然需要配置此dropzone,使用以下代码行完成:
Dropzone.options.propertyFile = {...}
propertyFile是包含正在配置的dropzone的div的camelized名称。
所以第一个dropzone div ID是propertyFile1。为了创建下一个,我将递增的索引值传递给CreateDropzone方法。
CreateDropzone(2)
将创建一个ID为propertyFile2等的Div。
我现在如何在CreateDropzone函数中配置新的dropzone,因为我不知道它在运行时的名称是什么?
CreateDropzone的代码如下:
var CreateDropzone = function (n) {
var newPropertyFile = "<div class='col-sm-4'><div class='form-group'><label for='propertyFile" + n + "Desc'>File Description</label><input type='text' id='propertyFile" + n + "Desc' /><div class='dropzone' id='propertyFile" + n + "'></div></div></div>";
$('#propertyFiles').append(newPropertyFile);
Dropzone.options.propertyFile = {
url: "/admin/PropertyFile/UploadPropertyFile",
acceptedFiles: "application/pdf",
uploadMultiple: false,
addRemoveLinks: true,
maxFiles: 1,
init: function () {
...
}
}
如何引用我刚刚在第4行代码中创建的特定Dropzone,因为它可以被称为propertyFile12(在上传11个文件之后)。