javascript - ajax 调用后 dropzone 不显示表单

标签 javascript php jquery ajax dropzone.js

我正在使用 dropzone,但遇到了一个问题,即 dropzone 在我的 ajax 调用后未检测到表单。在 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) {
  }

});

数据:

<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.discover() 之前将 autodiscover 设置为 false。

之后就可以在ajax成功后调用Dropzone.discover()了。

关于javascript - ajax 调用后 dropzone 不显示表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30887088/

相关文章:

php - Docker - 未创建mysql用户

jquery - 取消单一日期

Jquery,用计时器改变背景图像

javascript - 通过点击 angularjs 传递数据

php - 替代 if(x >= 200 && x <= 299)?

javascript - 与表单一起使用时,字符串参数不会自动解析为 bytes32

PHP/MySQL : Select locations close to a given location from DB

php - 在 ajax 添加到购物车上显示特定 Woocommerce 购物车商品数量的甜蜜警报

javascript - 有没有办法以编程方式生成一些 JavaScript 代码以在 Chrome 或 Firefox 调试器中执行?

javascript - 在客户端设置显示没有任何 asp 面板在任何 linkBut​​tonclick 上重新显示它