form.html,HTML表单form
前面我們講了HTML的各種數(shù)據(jù)輸入方式,數(shù)據(jù)輸入之后,一般來說應(yīng)該提交給后臺處理,HTML通過表單form來提交數(shù)據(jù)。
form包含1個(gè)或多個(gè)數(shù)據(jù)輸入,如input,單選,復(fù)選,文件等等
form將其包含的輸入項(xiàng),打包提交給后臺
form常用的2個(gè)屬性action,method
一個(gè)注冊表單如下,此表單包含3個(gè)輸入項(xiàng),用戶名,密碼,郵箱,1個(gè)提交按鈕,點(diǎn)擊提交按鈕后,數(shù)據(jù)將以post方式,傳給/test/form.php進(jìn)行處理:
用戶名:
密碼:
郵箱:
form-屬性actionaction屬性定義了處理表單的頁面,一般為后臺頁面
action為空則由當(dāng)前表單頁面進(jìn)行處理
form-屬性methodmethod定義提交表單時(shí)所用的 HTTP 方法(get 或 post)
何時(shí)使用 GET?表單默認(rèn)通過get方式提交數(shù)據(jù)
提交數(shù)據(jù)量較少時(shí),可以選擇get方式
當(dāng)您使用 get 時(shí),表單數(shù)據(jù)在頁面地址欄中是可見的,因此涉及隱私等重要數(shù)據(jù)時(shí),不適合get方式
如下代碼,點(diǎn)擊提交時(shí),數(shù)據(jù)在瀏覽器地址欄中可見,
/test/form?username=**&password=**&email=**
用戶名:
密碼:
郵箱:
用戶名:
密碼:
郵箱:
可以看到,點(diǎn)擊提交后,地址欄中顯示了輸入的密碼,因此涉及密碼等隱私數(shù)據(jù),不能使用get方式傳遞數(shù)據(jù)
何時(shí)使用 POST?如果表單包含敏感信息(例如密碼)
如果表單包含大量的數(shù)據(jù),如文章
如果表單包含文件上傳
POST 的安全性更加,因?yàn)樵陧撁娴刂窓谥斜惶峤坏臄?shù)據(jù)是不可見的。
用戶名:
密碼:
郵箱:
用戶名:
密碼:
郵箱:
form-屬性enctypeenctype 屬性規(guī)定在發(fā)送到服務(wù)器之前應(yīng)該如何對表單數(shù)據(jù)進(jìn)行編碼。
一般form可以不填寫該屬性
默認(rèn)地,表單數(shù)據(jù)會(huì)編碼為 "application/x-www-form-urlencoded"。就是說,在發(fā)送到服務(wù)器之前,所有字符都會(huì)進(jìn)行編碼(空格轉(zhuǎn)換為 "+" 加號,特殊符號轉(zhuǎn)換為 ASCII HEX 值)。
在使用包含文件上傳控件的表單時(shí),必須設(shè)置enctype="multipart/form-data"
值描述
application/x-www-form-urlencoded在發(fā)送前編碼所有字符(默認(rèn))
multipart/form-data不對字符編碼。
在使用包含文件上傳控件的表單時(shí),必須使用該值。
text/plain空格轉(zhuǎn)換為 "+" 加號,但不對特殊字符編碼。
form屬性列表:屬性描述
accept-charset規(guī)定在被提交表單中使用的字符集(默認(rèn):頁面字符集)。
action規(guī)定向何處提交表單的地址(URL)(提交頁面)。
autocomplete規(guī)定瀏覽器應(yīng)該自動(dòng)完成表單(默認(rèn):開啟)。
enctype規(guī)定被提交數(shù)據(jù)的編碼(默認(rèn):url-encoded)。
method規(guī)定在提交表單時(shí)所用的 HTTP 方法(默認(rèn):GET)。
name規(guī)定識別表單的名稱(對于 DOM 使用:document.forms.name)。
novalidate規(guī)定瀏覽器不驗(yàn)證表單。
target規(guī)定 action 屬性中地址的目標(biāo)(默認(rèn):_self)。
總結(jié)
以上是生活随笔為你收集整理的form.html,HTML表单form的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 孪生网络系列学习
- 下一篇: html两个div间有白线,html-在