<a href="http://www.php.cn/wiki/125.html" target="_blank">For</a>mData
物件,是可以使用一系列的鍵值對來模擬一個完整的表單,然後使用<a href="http://www.php.cn/wiki/1527.html" target="_blank">XML</a>HttpRequest
發送這個"表單"。
FormData物件使用說明。請求,那麼怎麼透過jQuery
Ajax上傳呢? #物件上傳檔案。 javascript程式碼
<form id="uploadForm" enctype="multipart/form-data"> <input id="file" type="file" name="file"/> <button id="upload" type="button">upload</button> </form>
這裡要注意幾點:<a href="http://www.php.cn/wiki/1495.html" target="_blank"></a>
#processDatafalse
。因為data
值是FormDataenctype="multipart/form-data"
屬性
。 #,上傳檔案不需要。 ;form>
表單建構的FormData對象,且已經宣告了屬性enctype="multipart/form-data"
,所以這裡設定為false。 #上傳後,伺服器端程式碼需要使用從file來取得檔案輸入流對象,因為
中宣告的是
name="file"。 ?也沒有
enctype="multipart/form-data"屬性。
$.ajax({ url: '/upload', type: 'POST', cache: false, data: new FormData($('#uploadForm')[0]), processData: false, contentType: false }).done(function(res) { }).fail(function(res) {});
#append()的第二個參數應該是文件對象,即$('#file')[0].files[0]
標籤能夠上傳多個文件,
只需要在<input type="file">
裡面加上multiple
或multiple= "multiple"
屬性。 伺服器端讀取檔案
Servlet 3.0 開始,可以透過request.getPart()
或 request.getPars()
兩個介面
取得上傳的檔案。
以上是FormData對像上傳文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!