我正在使用jQuery-File-Upload异步上传文件。 但是,我发现添加文件按钮每次选择时都会不断添加文件。
例如,首先我选择File1.txt
并单击山顶。然后第二次,我添加 File2.txt
并且所选文件将是 File1.txt
和 File2.txt
!所以当我点击提交时,第二次我将上传两个文件!
我想知道如何访问文件上传插件存储要提交的文件的变量,以便我可以清空
中的变量 done: function(e, result){
....
}
我知道有一个change
回调,但是收到的change回调(data.files
)只包含这次选择的文件,而不是整个文件列表提交。
我还没解决这个问题,我发现我的情况和this POST一样 与 this 相同
然而,没有人找到令人满意的答案。尽管有一些解决方法的技巧。
最佳答案
我遇到了类似的问题,以前上传的文件包含在下一次上传中。就像你已经挣扎了几个小时一样。直到我尝试了以下解决方案。
在添加功能上只需添加文件输入元素的“更改”事件,如下所示:
$('#YourFileUploadElementId').change(function(e) {
data.files.splice(0); // Clear All Existing Files
});
完整示例如下:
$('#YourFileUploadElementId').fileupload({
// Some options
add: function (e, data) {
$('#YourFileUploadElementId').change(function(e) {
data.files.splice(0); // Clear All Existing Files
});
},
// Other Events
});
注意:只需将 YourFileUploadElementId 更改为您的文件上传元素 ID。
这是 jsfiddle.net 上的完整示例
关于jquery - 如何清除 blueimp 的 jquery-fileupload 插件中先前选择的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21176756/