HTMLInputElement: files 屬性

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

HTMLInputElement.files 屬性允許您訪問使用 <input type="file"> 元素選擇的 FileList

一個 FileList 物件,列出了選定的檔案(如果有),或者在 HTMLInputElementtype 不是 "file" 時為 null

示例

下面的示例演示瞭如何訪問 HTMLInputElement.files 屬性,並記錄使用者選擇的每個檔案的名稱、修改日期、大小和型別。

HTML

html
<input id="files" type="file" multiple />

JavaScript

請注意,即使沒有選擇檔案,HTMLInputElement.files 仍會返回 FileList 的例項。因此,可以直接使用 for...of 迴圈遍歷它,而無需檢查是否有檔案被選中。

js
const fileInput = document.getElementById("files");

console.log(fileInput.files instanceof FileList); // true even if empty

for (const file of fileInput.files) {
  console.log(file.name); // prints file name
  let fileDate = new Date(file.lastModified);
  console.log(fileDate.toLocaleDateString()); // prints legible date
  console.log(
    file.size < 1000 ? file.size : `${Math.round(file.size / 1000)}KB`,
  );
  console.log(file.type); // prints MIME type
}

規範

規範
HTML
# dom-input-files-dev

瀏覽器相容性

另見