我正在使用dropzone,我遇到了一个问题,即我的ajax调用后dropzone没有检测到表单。在ajax的成功之后,我尝试在填写表单后添加Dropzone.discover();
。
Ajax电话:
$.ajax({
type: 'POST',
url: 'https://xxxxxxx/?controller=Sellers&action=showAllProducts',
data: postData,
success: function (data) {
$('#showProducts').html(data);
Dropzone.discover();
},
error: function (error) {
}
});
data
:
<div class="container-fluid">
<div class="row">
<?php
foreach($products as $product){
?>
<!--HTML starts here!!!-->
<div class="col-md-3 col-sm-4" style="width:358px; height:676px;">
<?php echo '<form action="app/public/templates/control_panel/upload.php"
class="dropzone"
id="myDropzone">
</form>';?>
<!--HTML ends here!!!-->
</div>
<?php
}
echo '</div>';
echo '</div>';
现在我知道dropzone正在运行,因为当我将表单直接放在页面上时,它就像它应该的那样工作。我认为问题是我的表格是在dropzone被解雇之后出现的,但是我尝试了很多东西而且没有任何效果。
答案 0 :(得分:2)
嗯,要使用发现功能,您必须在致电autodiscover
之前将Dropzone.discover()
设为false。
之后,您可以在ajax成功中致电Dropzone.discover()
。