4
我正在試驗基於AJAX的文件上傳下面this article,到目前爲止進程工作正常,但我一直無法找到我如何可以實現文件列表中止按鈕。如何.abort()ajax文件上傳?
的文章中的核心代碼是這樣的:
var fileInput = document.getElementById('the-file');
var file = fileInput.files[0];
var xhr = new XMLHttpRequest();
xhr.upload.addEventListener('progress', onprogressHandler, false);
xhr.open('POST', '/upload/uri', true);
xhr.send(file);
function onprogressHandler(evt) {
var percent = event.loaded/event.total*100;
console.log('Upload progress: ' + percent + '%');
}
文中提到,有可能定義一個abort
聽衆:
xhr.upload.onabort = function (evt) {
console.log("Aborted", evt);
}
根據MDC有一個在FileReader object的abort
方法,但我不清楚在這種情況下我應該如何使用它(或者,如果它與我一直在尋找的是相同的「中止」)。
我想要的是在選擇上傳的每個文件旁邊有一箇中止按鈕,如果用戶單擊了一個按鈕,那麼該文件應該從列表中刪除,或者如果它的上傳已經開始,它應該立即中止。
這似乎中止了整個上傳過程。你知道一種只中止選定文件的方法嗎?它有可能嗎? – Wabbitseason
爲什麼不爲每個文件執行一個進程?那麼他們會單獨上傳,而不是排隊...... var files = $(target)[0] .files; var fileCount = files.length; $ .each(files,function(i){}); –