歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> 如何不依靠JS或Flash來使用HTML5傳輸多文件

如何不依靠JS或Flash來使用HTML5傳輸多文件

日期:2017/3/1 10:18:04   编辑:Linux編程
雖然現在已經可以通過表單的方式用浏覽器向服務器傳輸文件,尤其是<input type=file>這種表單控件,然而這東西一次最多只能傳遞一個文件。如果用戶需要上傳整個相冊或者多張圖片,那麼技術人員只好從其他途徑想辦法了,比如Flash或者JS。但是現在通過HTML5提供的新標簽,我們就可以完全不需要那些額外的東西了。HTML5為上傳文件提供了幾個新標簽,比如multiple就是為了支持多文件上傳專用的。multiple是一個bool標簽來表示是否允許用戶上傳多個文件。比如<input type="file" multiple/>在最新版的Safari, Chrome, FireFox, IE以及Opera都是支持的。至於控件的外觀渲染那就是各種浏覽器自己的事情了。為了能讓用戶一次性選擇多個文件,用戶將可用Shift或者Ctrl或者CMD按鍵逐個點擊要添加的文件。
如何使用 從技術角度看,你只需要在input控件中標注multiple標簽就夠了 以下就是演示代碼:
<!DOCTYPE html>

<html>

<head>

<title>

Solution 4-5: Sending multiple files

</title>

</head>

<body>

<form id="myForm">

<fieldset>

<legend>Solution 4-5: Sending multiple files</legend>

<label>Upload one or more files:</label>

<input type="file" name="multipleFileUpload" multiple />




</fieldset>

</form>

</body>

</html>
重要心得 用戶選擇的多個文件傳遞到服務端後將會被服務端的編程語言去處理的。有些編程語言,比如PHP需要你為name標簽的字符添加方括號來支持傳輸多個文件。
<input name="filesUploaded[]" type="file" multiple />
這樣,PHP將構造一個數據類型的數組,來容納一個個上傳到服務器的文件。相反如果你在HTML標簽中不適用方括號的話,PHP將僅僅只接受到最後一個文件。
Copyright © Linux教程網 All Rights Reserved