我使用Dropzone在客户端上传文件。我已经使用JQuery以编程方式设置了Dropzone,我希望能够分离它,这样用户就不能再上传文件了。我理想的解决方案是简单地将其设置为不可点击,然后应用默认消息来向用户表明他们已经超过了上传的数量。
下面是一个简单的例子:http://www.dressorganic.co.uk/dropzone-test/turn-off-dropzone-after-load.htm
在这里,我尝试在成功事件之后将其设置为不可点击,但什么也没有发生。
这是一个链接,指向成功上传后我实际想要的样子:http://www.dressorganic.co.uk/dropzone-test/dropzone-disabled.htm
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>Turn off Dropzone after load</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="/dropzone-test/dropzone/4.0.1/dist/min/dropzone.min.js"></script>
<link rel="stylesheet" href="/dropzone-test/dropzone/4.0.1/dist/min/dropzone.min.css">
<script type="text/javascript">
//<![CDATA[
$(function() {
$("#upload1").dropzone({
createImageThumbnails : false,
url: "/dropzone-test/handleupload.asp",
acceptedFiles : ".jpg,.jpeg,.png,.gif",
dictDefaultMessage : "Click here or drag and drop files to upload",
addRemoveLinks : false,
success : function(file) {
this.removeAllFiles();
$("#upload1").dropzone({
clickable : false,
url: "/dropzone-test/handleupload.asp",
dictDefaultMessage : "You have exceeded the number of uploads, please remove existing to add more"
});
},
});
}); // JQuery
//]]>
</script>
</head>
<body>
<div id="singleproductload">
<div id="upload1" class="dropzone">
</div>
</div>
</body>
</html>发布于 2015-05-23 07:15:12
为什么不用具有相同CSS的另一个div替换或隐藏该元素。尝试remove、replaceWith、show、hide或toggle
发布于 2015-05-23 07:44:38
参见How to limit the number of dropzone.js files uploaded?。如果您打算允许用户在文件达到最大值后删除文件,则不希望销毁或隐藏重要的dropzone元素。
发布于 2019-06-21 12:02:33
尝试删除并重新创建div容器以及销毁()方法。它使得使用新参数重新初始化Dropzone成为可能。
var url = 'myurl',
dz
function createDrop(opt) {
dz && dz.destroy()
$('#dz_container').find('div').remove()
$('<div>', {'class':'dropzone',id:'dz'}).appendTo($('#dz_container'))
Dropzone.options.dz = opt
dz = new Dropzone('div#dz', { url: url})
}
createDrop({dictDefaultMessage:'new message...'})https://stackoverflow.com/questions/30407120
复制相似问题