3
我在引導主題的模式框內有一個窗體。該表單包含很少的輸入字段和一個Dropzone字段,所有這些字段都通過ajax將數據發送到服務器。填完表格後,我顯然需要重新設置下一組輸入的表單。我設法成功地重置了表單域,除了Dropzone圖像。在模式框中重置Dropzone
因此,現在當我點擊提交,填寫表格後,數據輸入。點擊該按鈕再次打開模式以添加一組新圖像時,前一圖像仍顯示在那裏。我也需要這個消失。
我一直在尋找S.O和許多其他地方的解決方案。我無法得到解決方案。任何指導表示讚賞。
HTML:
<form enctype="multipart/form-data" id="addProductImageForm" class="dropzone dz-clickable" action="#">
<div class="dz-default dz-message" ><span>Click here to upload Product Image</span></div>
</form>
JS:
Dropzone.options.addProductImageForm = {
paramName: "productImage",
maxFilesize: 2,
maxFiles: 1,
uploadMultiple: false,
acceptedFiles: "image/*",
dictDefaultMessage: "Click to Upload",
addRemoveLinks: true,
accept: function(file, done) {
if (file.name == "bg.png") {
done("Naha, you don't.");
}
else {
done();
}
},
success: function(d, response, test) {
var value = response.replace("int(0)", "");
var value2 = value.replace(/(\r\n|\n|\r)/gm, "");
$('#product_imageName').val(value2);
},
init: function() {
this.on("maxfilesexceeded", function(file) {
alert("No more files please!");
});
}
};
$("#addProductImageForm").dropzone({url: "/path/to/upload_product_image.php"});
.
.
.
.
var formData = {
(input values here)
};
$.ajax({
type: 'POST',
url: 'path/to/projectsAction.php',
data: formData,
encode: true
})
.done(function(data) {
var value3 = data.replace(/(\r\n|\n|\r)/gm, "");
$('#project_productId').append('<option value="' + value3 + '" selected="selected">' + formData.product_name + '</option>');
$("#addProductForm").find("input[type=text], textarea, select").val("");
$("#addProductImageForm").html("");// THIS IS THE LINE THAT REMOVES THE THUMBNAIL. (From the answer given by xrcwrn)
$('.close').click();
});
event.preventDefault();
感謝您的答覆後,使用懸浮窗像
。這是部分工作。即它刪除了前一張圖像的縮略圖,但該文件仍然存在。當我嘗試上傳另一個文件時,它是dropzone中的第二個項目。這意味着更早的那個仍然存在,只是它不可見。有小費嗎? – Anagh 2014-12-08 06:18:34
你能不能請分享你的代碼 – xrcwrn 2014-12-08 06:39:30
我已經將代碼添加到問題中。你可以看一下嗎? – Anagh 2014-12-08 07:14:06