Form表單標(biāo)簽的Enctype屬性的作用及應(yīng)用示例介紹
發(fā)布時間:2014-05-13 17:37:12 作者:佚名
我要評論
Enctype是指定將數(shù)據(jù)回發(fā)到服務(wù)器時瀏覽器使用的編碼類型,其編碼類型有以下三種,下面通過示例為大家詳細(xì)介紹下其具體的使用
Enctype :指定將數(shù)據(jù)回發(fā)到服務(wù)器時瀏覽器使用的編碼類型。用于表單里有圖片上傳。
編碼類型有以下三種:
application/x-www-form-urlencoded: 在發(fā)送前編碼所有字符(默認(rèn))。這是標(biāo)準(zhǔn)的編碼格式。
multipart/form-data: 不對字符編碼,在使用包含文件上傳控件的表單時,必須使用該值。
text/plain: 窗體數(shù)據(jù)以純文本形式進(jìn)行編碼,其中不含任何控件或格式字符。
例子:
<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"的意思,是設(shè)置表 單的MIME編碼。默認(rèn)情況,這個編碼格式是 application/x-www-form-urlencoded,不能用于文件上傳;只有使用了multipart/form-data,才能完整 的傳遞文件數(shù)據(jù)。
enctype="multipart/form-data"是上傳二進(jìn)制數(shù)據(jù)過去。
如果在服務(wù)器端要通過Request對象來獲取相應(yīng)表單域的值,則應(yīng)該將enctype屬性設(shè)置為application/x-www-form-urlencoded值(即默認(rèn)值,可以不顯示設(shè)置)。
為什么上傳文件要設(shè)置enctype="multipart/form-data":
因為:設(shè)置enctype為multipart/form-data值后,不對字符編碼,則數(shù)據(jù)通過二進(jìn)制的形式傳送到服務(wù)器端,這時如果用request是無法直接獲取到相應(yīng)表單的值的,而應(yīng)該通過stream流對象,將傳到服務(wù)器端的二進(jìn)制數(shù)據(jù)解碼,從而讀取數(shù)據(jù)。
如果要上傳文件的話,是一定要將encotype設(shè)置為multipart/form-data的。
編碼類型有以下三種:
application/x-www-form-urlencoded: 在發(fā)送前編碼所有字符(默認(rèn))。這是標(biāo)準(zhǔn)的編碼格式。
multipart/form-data: 不對字符編碼,在使用包含文件上傳控件的表單時,必須使用該值。
text/plain: 窗體數(shù)據(jù)以純文本形式進(jìn)行編碼,其中不含任何控件或格式字符。
例子:
復(fù)制代碼
代碼如下:<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"的意思,是設(shè)置表 單的MIME編碼。默認(rèn)情況,這個編碼格式是 application/x-www-form-urlencoded,不能用于文件上傳;只有使用了multipart/form-data,才能完整 的傳遞文件數(shù)據(jù)。
enctype="multipart/form-data"是上傳二進(jìn)制數(shù)據(jù)過去。
如果在服務(wù)器端要通過Request對象來獲取相應(yīng)表單域的值,則應(yīng)該將enctype屬性設(shè)置為application/x-www-form-urlencoded值(即默認(rèn)值,可以不顯示設(shè)置)。
為什么上傳文件要設(shè)置enctype="multipart/form-data":
因為:設(shè)置enctype為multipart/form-data值后,不對字符編碼,則數(shù)據(jù)通過二進(jìn)制的形式傳送到服務(wù)器端,這時如果用request是無法直接獲取到相應(yīng)表單的值的,而應(yīng)該通過stream流對象,將傳到服務(wù)器端的二進(jìn)制數(shù)據(jù)解碼,從而讀取數(shù)據(jù)。
如果要上傳文件的話,是一定要將encotype設(shè)置為multipart/form-data的。
相關(guān)文章

HTML img標(biāo)簽和超鏈接標(biāo)簽詳細(xì)介紹
文章介紹了HTML中img標(biāo)簽的使用,包括src屬性(指定圖片路徑)、相對/絕對路徑區(qū)別、alt替代文本、title提示、寬高控制及邊框設(shè)置等,本文主要給大家介紹HTML img標(biāo)簽和超鏈2025-06-20HTML中meta標(biāo)簽的常見使用案例(示例詳解)
HTML meta標(biāo)簽用于提供文檔元數(shù)據(jù),涵蓋字符編碼、SEO優(yōu)化、社交媒體集成、移動設(shè)備適配、瀏覽器控制及安全隱私設(shè)置,優(yōu)化頁面顯示與搜索引擎索引,本文給大家介紹HTML中meta2025-06-20
input 標(biāo)簽主要用于接收用戶的輸入,隨 type 屬性值的不同,變換其具體功能,本文通過實例圖文并茂的形式給大家介紹HTML input 標(biāo)簽,感興趣的朋友一起看看吧2025-06-20
這篇文章主要介紹了html 滾動條滾動過快會留下邊框線的解決方案,解決方法很簡單,可以將 dialog 單獨拿出來別放在 transform 的子元素里,需要的朋友可以參考下2025-06-09- 本文將介紹如何使用<img>標(biāo)簽在 HTML 中添加圖片,并展示一些常見的用法和技巧,通過本文的介紹,應(yīng)該掌握了在 HTML 中添加和調(diào)整圖片的基礎(chǔ)知識,感興趣的朋友一起看2025-05-16
- HTML表格用于在網(wǎng)頁上展示數(shù)據(jù),通過標(biāo)簽及其相關(guān)標(biāo)簽來創(chuàng)建,表格由行和列組成,每一行包含一個或多個單元格,單元格可以包含文本、圖像、鏈接等元素,本文將詳細(xì)介紹HTML表格2025-03-12
- 本文介紹了三種禁止HTML頁面滾動的方法:通過CSS的overflow屬性、使用JavaScript的滾動事件監(jiān)聽器以及使用CSS的position:fixed屬性,每種方法都有其適用場景和優(yōu)缺點,感興2025-02-24
在 Web 開發(fā)中,文本的視覺效果是提升用戶體驗的重要因素之一,通過 CSS 技巧,我們可以創(chuàng)造出許多獨特的效果,例如文字鏤空效果,本文將帶你一步一步實現(xiàn)一個簡單的文字鏤空2024-11-17
Html去除a標(biāo)簽的默認(rèn)樣式的操作代碼
在Html中,a標(biāo)簽?zāi)J(rèn)的超鏈接樣式是藍(lán)色字體配下劃線,這可能不滿足所有設(shè)計需求,如需去除這些默認(rèn)樣式,可以通過CSS來實現(xiàn),本文給大家介紹Html去除a標(biāo)簽的默認(rèn)樣式的操作代碼2024-09-25- 在HTML中,可以通過設(shè)置CSS的resize屬性為none,來禁止用戶手動拖動文本域(textarea)的大小,這種方法簡單有效,適用于大多數(shù)現(xiàn)代瀏覽器,但需要在老舊瀏覽器中進(jìn)行測試以確保2024-09-25





