如何在blueimp';中清除以前选择的文件;s jquery文件上传插件?

如何在blueimp';中清除以前选择的文件;s jquery文件上传插件?,jquery,file-upload,Jquery,File Upload,我使用异步上传文件。 但是,我发现“添加文件”按钮每次选择时都会不断添加文件 例如,首先我选择File1.txt并单击summit。然后第二次,我添加了File2.txt,选择的文件将是File1.txt和File2.txt!所以当我点击提交,第二次我会上传两个文件 我想知道如何获得访问变量的文件上传插件存储文件提交,所以我可以清空变量中 done: function(e, result){ .... } 我知道有一个更改回调,但是更改回调收到的(data.fi

我使用异步上传文件。 但是,我发现“添加文件”按钮每次选择时都会不断添加文件

例如,首先我选择
File1.txt
并单击summit。然后第二次,我添加了
File2.txt
,选择的文件将是
File1.txt
File2.txt
!所以当我点击提交,第二次我会上传两个文件

我想知道如何获得访问变量的文件上传插件存储文件提交,所以我可以清空变量中

    done: function(e, result){
        ....
    }
我知道有一个
更改
回调,但是更改回调收到的(
data.files
)只包含这次选择的文件,而不是要提交的整个文件列表

我还没有解决这个问题,我发现我的情况和以前一样 这和


然而,没有人找到一个讽刺的答案。尽管有一些解决办法

我遇到了一个类似的问题,以前上传的文件被包含在下一次上传中。我提出的解决方案是跟踪所有上传尝试,方法是将文件名存储在一个数组中,并在文件已经上传的情况下签入“发送”回调(用于启动每个文件上传请求的回调)(如果此回调返回false,则文件上传请求被中止)


有关更多详细信息,请转到此处:

我遇到了一个类似的问题,以前上载的文件被包含在下一次上载中。我提出的解决方案是跟踪所有上传尝试,方法是将文件名存储在一个数组中,并在文件已经上传的情况下签入“发送”回调(用于启动每个文件上传请求的回调)(如果此回调返回false,则文件上传请求被中止)


有关更多详细信息,请转到此处:

我遇到了一个类似的问题,以前上载的文件被包含在下一次上载中。就像你挣扎了几个小时。直到我尝试了以下解决方案

在Add函数中,只需添加文件输入元素的“change”事件,如下所示:

$('#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').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
 });
注意:只需将您的文件上传元素id更改为您的文件上传元素id即可

下面是jsfiddle.net上的完整示例


我遇到了一个类似的问题,以前上传的文件被包含在下一次上传中。就像你挣扎了几个小时。直到我尝试了以下解决方案

在Add函数中,只需添加文件输入元素的“change”事件,如下所示:

$('#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').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
 });
注意:只需将您的文件上传元素id更改为您的文件上传元素id即可

下面是jsfiddle.net上的完整示例


您是否尝试了
add
回调?我尝试了
add
回调,但它收到的data.file一次只包含一个文件。我遇到了同样的问题。有人有办法吗?@AllanRuin我也有同样的情况,不幸的是,没有答案(您是否尝试过
add
callback?我尝试过
add
callback,但它收到的data.files一次只包含一个文件。我遇到了同样的问题。有人找到了解决方案吗?@AllanRuin我遇到了完全相同的情况,不幸的是,没有答案。)(