我正在使用dropzone.js。它第一次工作正常但是当我第二次尝试上传图像时,成功功能不会被取消。 我正在使用下面的代码,这里的问题是,当我点击一个按钮然后弹出一个弹出窗口,我选择图像,成功功能中的功能正常。当我单击“提交”按钮时,弹出窗口消失。如果我再次遵循相同的过程,那么成功函数不会被删除。
var thumbnailwidth = 100;
var thumbnailheight = 100;
var mydropzone = null;
function initDropZone(){
var preview_template = $('#preview-template').html();
mydropzone = $("#gpZUpload").dropzone({
url: "<?php echo CHILD_DIR;?>/buddypress/activity/upload.php",
thumbnailHeight:10000,
thumbnailWidth:10000,
maxFiles:1,
// previewTemplate: preview_template,
previewsContainer: "#preview",
success: function (file, response) {
var obj1 = $.parseJSON(response);
var imgName = obj1.image_url;
window.thumbnailwidth = obj1.width;
window.thumbnailheight = obj1.height;
var image_location=imgName
file.previewElement.classList.add("dz-success");
var input = document.createElement("input");
input.setAttribute("type", "hidden");
input.setAttribute("name", "image_url");
input.setAttribute("value", imgName);
file.previewTemplate.appendChild(input);
//$('.crop-button').trigger('click');
initJCrop();
},
error: function (file, response) {
file.previewElement.classList.add("dz-error");
}
});
}
mydropzone.on("addedfile", function(file) {
alert('hello');
});
function initJCrop(){
$('#preview img[data-dz-thumbnail]').Jcrop({
trueSize: [window.thumbnailwidth,window.thumbnailheight],
onChange:showCoords,
onSelect:showCoords,
bgOpacity:.4,
setSelect:[210, 245, 800, 600 ],
aspectRatio:16/9
});
}
function showCoords(c){
$('.x1_cords').val(c.x);
$('.y1_cords').val(c.y);
$('.x2_cords').val(c.x2);
$('.y2_cords').val(c.y2);
$('.new_width').val(c.w);
$('.new_height').val(c.h);
};
提前致谢。
答案 0 :(得分:1)
经过长时间的研究,我发现如果我们设置maxFiles:n其中'n'是一个数字,那么成功函数在我的情况下只被调用n次1次。所以我省略了它,它开始运行良好。