DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> HTML基礎知識 >> HTML和Xhtml >> Form表單標簽的Enctype屬性的作用及應用示例介紹
Form表單標簽的Enctype屬性的作用及應用示例介紹
編輯:HTML和Xhtml     
Enctype :指定將數據回發到服務器時浏覽器使用的編碼類型。用於表單裡有圖片上傳。

編碼類型有以下三種:

application/x-www-form-urlencoded: 在發送前編碼所有字符(默認)。這是標准的編碼格式。
multipart/form-data: 不對字符編碼,在使用包含文件上傳控件的表單時,必須使用該值。
text/plain: 窗體數據以純文本形式進行編碼,其中不含任何控件或格式字符。

例子:

復制代碼代碼如下:
<form action="${pageContext.request.contextPath}/imageUpload_saveOrUpdate.action" method="post" enctype="multipart/form-data">
<div>
<label>請選擇上傳圖片地址:</label>
<input type="file" name="image"/>
</div>
</div>
<div>
<input type="submit" value="上傳"/>
</div>
</form>

表單中enctype="multipart/form-data"的意思,是設置表 單的MIME編碼。默認情況,這個編碼格式是 application/x-www-form-urlencoded,不能用於文件上傳;只有使用了multipart/form-data,才能完整 的傳遞文件數據。

enctype="multipart/form-data"是上傳二進制數據過去。

如果在服務器端要通過Request對象來獲取相應表單域的值,則應該將enctype屬性設置為application/x-www-form-urlencoded值(即默認值,可以不顯示設置)。

為什麼上傳文件要設置enctype="multipart/form-data":

因為:設置enctype為multipart/form-data值後,不對字符編碼,則數據通過二進制的形式傳送到服務器端,這時如果用request是無法直接獲取到相應表單的值的,而應該通過stream流對象,將傳到服務器端的二進制數據解碼,從而讀取數據。

如果要上傳文件的話,是一定要將encotype設置為multipart/form-data的。
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved