gpt4 book ai didi

javascript - FineUploader 完成回调事件多次触发

转载 作者:行者123 更新时间:2023-11-30 10:22:37 25 4
gpt4 key购买 nike

我在 UI 模式下使用 Fine Uploader 作为 jQuery 插件,我有一个文件类型的下拉列表,例如图像、视频、pdf 等。我在下拉列表时动态更改 allowedExtensions 和 acceptFiles通过删除 Fine Uploader 生成的 div 然后像这样重新创建它来更改:

$('.qq-uploader').remove();
$('#jquery-wrapped-fine-uploader').fineUploader({/* options go here... */});

动态验证以这种方式工作得很好,但我在完整的回调事件中做了一些自定义的事情,比如显示缩略图。上传文件时,每当第一次上传之前下拉列表发生变化时,它都会触发 complete 事件。

我现在的解决方法是将上传的文件名存储在一个数组中,如果自定义完整逻辑已经存在于数组中,则跳过它。

我不明白为什么 complete 回调事件会触发多次,因为我只上传了一个文件。是否有对此的解释和/或防止触发重复回调的方法?

最佳答案

这里有几种方法可以实现您的目标:

  1. 在重新初始化 Fine Uploader 之前从 DOM 中删除 Fine Uploader 容器元素。在您的 fiddle 中,您正在删除 Fine Uploader 使用的内部元素。这永远行不通。您需要销毁实例,使用 jQuery 插件时唯一的方法是销毁容纳插件实例的 DOM 元素。在你之后remove容器元素,然后您可以重新添加它并重新初始化 Fine Uploader。

  2. 利用 multiple upload buttons feature .本质上,您将使用适当的验证设置为每种文件类型创建一个备用上传按钮,并更改当用户更改 <select> 的值时显示的按钮。 .

关于javascript - FineUploader 完成回调事件多次触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20914216/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com