在JQuery FileUpload中返回delete的成功

时间:2012-11-27 09:46:47

标签: javascript jquery file-upload javascript-events

我正在使用blueimp's Jquery file upload plugin。对于添加文件,有许多不同的回调。例如:

$('#fileupload').bind('fileuploaddone', function (e, data) {/* ... */})

我想绑定一个回调,告诉我文件是否已被成功删除,但我搜索了文档,但找不到任何看起来像这样做的东西。任何人都知道我该怎么做?

更新: 我应该说上面的代码只返回UPLOADING文件。删除文件不会返回任何事件。这就是我想尝试并实现为bluimp的源代码。

回调的源代码在https://github.com/blueimp/jQuery-File-Upload/blob/master/js/jquery.fileupload-ui.js

2 个答案:

答案 0 :(得分:2)

为了总结先前的注释,回调函数是将通过事件fileuploaddone处理从服务器接收的数据的函数。因此,您将拥有这样的代码:

$('#fileupload').bind('fileuploaddone', callbackfunc); 

// Your callback function
function callbackfunc(e, data) { 
    /* your code, like : if (data.kind === "error") alert(data.message); */ 
}

但你可以通过匿名函数缩短它:

$('#fileupload').bind('fileuploaddone', function (e, data) {/* your code, like : if (data.kind === "error") alert(data.message); */})

修改

对于删除,回调可以与事件fileuploaddestroy绑定(请参阅此页:BlueImp options)。

答案 1 :(得分:1)

如果仍然有人在寻找,我找到了解决方案,方法是将jquery.fileupload-ui.js文件中“ destroy”函数中的“ removeNode”函数声明更改为:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@1,300&display=swap" rel="stylesheet">

<div id="result"></div>

然后仅添加“ fileuploaddestroyed”事件,数据将包含服务器响应,而不是原始表单数据