0
我使用jQuery文件上傳插件爲我的網站。jQuery文件上傳:檢測是否選擇了相同的文件
用戶按下「瀏覽...」按鈕後,我會調用uploadadd回調函數。 但是,它引發EVERYTIME用戶添加文件。即使他添加了相同的文件。
我需要的是爲每個獨特文件只啓動一次uploadadd回調或獲取文件的唯一標識符,以便我可以將其存儲在一個文件數組中。在這種情況下,我可以檢測文件是否已被選中。
我試圖用回調函數的數據數組:
function (e, data) { }
,但它僅包含文件大小/文件名/文件類型的信息,所以我不能從它,因爲兩個或多個文件可以創建一個唯一的哈希相同的信息。
這裏是我的代碼:
$('#fileupload').fileupload({
url: "/upload/",
dataType: 'json',
autoUpload: false,
add: function (e, data) {
console.log(data.files[0]);
qcount += 1;
$('#select-button').text(qcount + ' files');
data.submit();
});
});
在Uploadify插件我可以使用onAddQueueItem回調,但jQuery的文件上傳似乎並不具有相同的功能。
提前致謝!
我無法使用file.name + file.size作爲散列,因爲它不安全。如果有兩個名爲「1.jpg」的文件和1024字節的大小? – Gregory 2014-12-03 19:51:54
那麼,我試過你的源代碼,但它失敗時,我上傳兩個不同的圖像,但具有相同的文件名和文件大小。 – Gregory 2014-12-03 19:58:11
哪一個對你更重要 - 兩個具有相同名稱和文件大小的文件?你總是可以在後端編碼來捕獲一個或另一個。我認爲在前端捕獲相同的文件大小和文件名會更有意義,但如果您想讓人們這樣做,那麼,好吧。 – taco 2014-12-03 20:11:22