通過jquery獲取上傳文件名稱、類型和大小的實現(xiàn)代碼
在文件上傳到服務(wù)器之前,我們可以通過jquery來獲取上傳文件的名稱,類型和尺寸大小。
通常情況下,當(dāng)用戶通過<input type='file'>標(biāo)簽來上傳文件時,我們可以看到上傳文件的名稱。HTML5 File API為我們提供了一種安全的方式,讓我們在客戶端訪問計算機中的文件,并更好的對這些文件執(zhí)行操作。
支持File API的瀏覽器有IE10+,F(xiàn)irefox4+,Safari5.0.5+,Opera11.1+和Chrome。
File API在表單的文件輸入字段的基礎(chǔ)上,又添加了一些直接訪問文件信息的接口。HTML5在DOM中為文件輸入元素添加了一個files集合。通過文件輸入字段選擇了一個或多個文件時,files集合中包含一組File對象,每個File對象對應(yīng)著一個文件。每個文件都有下列的只讀屬性:
- name:本地文件系統(tǒng)中的文件名。
- size:文件的字節(jié)數(shù)。
- type:文件的MIME類型。
- lastModifiedDate:文件上一次被修改的時間。
通過這個files接口,我們就可以在jquery中獲取上傳文件的名稱,類型和尺寸大小。通過下面的demo來體驗一下效果。
1、通過“選擇文件”按鈕來選擇要上傳的文件,可以選擇多個文件。
2、選擇文件后點擊“顯示上傳文件的詳細(xì)信息”按鈕來查看文件的詳細(xì)信息。
要同時上傳多個文件,需要在文件上傳標(biāo)簽中添加multiple屬性。上面demo的HTML結(jié)構(gòu)如下:
<input id="fUpload" multiple type="file" /><br /> <ul id="ulList"> </ul> <input id="btnShow" type="button" value="顯示上傳文件的詳細(xì)詳細(xì)" />
在jquery代碼中,首先檢測被選擇文件的數(shù)量,然后通過一個循環(huán)來分別獲取每個文件的詳細(xì)信息。完整的jquery代碼如下:
$("#btnShow").on('click', function () { $("#ulList").empty(); var fp = $("#fUpload"); var lg = fp[0].files.length; // get length var items = fp[0].files; var fragment = ""; if (lg > 0) { for (var i = 0; i < lg; i++) { var fileName = items[i].name; // get file name var fileSize = items[i].size; // get file size var fileType = items[i].type; // get file type // append li to UL tag to display File info fragment += "<li>" + fileName + " (<b>" + fileSize + "</b> bytes) - Type :" + fileType + "</li>"; } $("#ulList").append(fragment); } });
這篇文章就介紹到這了,需要的朋友可以參考一下。
相關(guān)文章
jquery實現(xiàn)html頁面先加載內(nèi)容過幾秒后顯示數(shù)據(jù)
這篇文章主要給大家介紹了關(guān)于jquery實現(xiàn)html頁面先加載內(nèi)容過幾秒后顯示數(shù)據(jù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07jQuery實現(xiàn)動態(tài)添加和刪除一個div
我想做一個可以動態(tài)添加刪除div的功能。中間遇到一個問題,最后在網(wǎng)友的熱心幫助下解決了,使用到的jquery方法和思想就是:事件的綁定和銷毀(unbind)2015-08-08