HTML表單的用法

1、關于form表單的基礎

  • form表單:是一個包含表單元素的區域;作用,用于包裹表單元素。
  • 表單元素:是允許用戶在表單中(比如:文本域、下拉列表、單選框、復選框等)輸入信息的元素。作用,搜集填寫的用戶信息,提交給后臺(服務器)。

1.1 form標簽語法

form 將表單元素包裹起來,受form包裹的表單元素才會提交給服務器。
<form action=”地址” method=””>
表單元素
</form>
form標簽是表單的外殼,主要有四個屬性:
action:表單提交的地址(后臺服務器地址)
method:提交表單的方法,兩種請求方式,post、get
target:在何處打開action
enctype:(編碼方式)
applocation/x-www-form-erlencoded 在發送前編碼所有字符(默認)
text/plain:空格轉換為”+”號,但不對特殊字符編碼
multipart/form-data:使用包含文件上傳控件的表單時,必須使用該值。例如:上傳音頻、視頻。

1.2 post和get兩種方式向服務器(后臺)提交數據

 - get方式是URL的一個拼接,信息組裝,URL變成“服務器地址?元素=元素輸入&元素=元素輸入。(K=value的形式)
 - post方式,URL沒發生變化,數據和參數發給服務器,URL無變化。

1、區別:(體現在方式、安全、數據量三個方面)
- 方式,點擊提交(發請求時),get將請求數據變成”k=value”的形式,然后組裝到URL上。post方式提交請求時,數據通過瀏覽器傳輸給后臺,但是URL沒發生變化。
- 安全,get將信息組裝到URL上,信息泄露,不安全;post方式的URL沒發生變化更加安全。
- 數據量,瀏覽器地址欄能存放的字符有限的(容量有限),get方式的URL過于冗長,當超出限制時,瀏覽器自動截斷URL,則傳給后臺的數據不完整,所以對數據大小有限制。而post方式的URL更干凈、輕便,能完整地將數據傳遞給后臺,無數據大小限制。

2、什么時候用get,什么時候用post(使用場景)
get:向后臺查詢東西,如查詢論文;即向后臺索要數據,用關鍵詞來獲取大量數據。安全性要求低,簡單。
post:向后臺傳數據,例論文查重(數據很大,提交給后臺)。安全性要求高。

2.2 label標簽和input標簽

(1) label標簽

- 表單元素(input標簽)的名稱
- 語法:<label for=”id”>名稱</label>  
- 其中for對應id的值,使點擊文字時,input選框也變為focus狀態(input選框被點擊時,變為focus狀態才能輸入)。

(2) input標簽

是表單收集信息的元素,主要有以下屬性:

  • type=”123...” : 表單元素的方式,即標簽(輸入)類型,
    常用有:text, textarea, password, radio, checkbox, select, file, hidden, button, submit, resect, placeholder等。此外,HTML新增了輸入類型:color, date, datetime, datetime-local, email, month, number, range, search, tel, time, url, week。
  • name=”123...” : 表單元素的控件名,用于對提交到服務器后的表單數據進行標識,只有設置了name屬性的表單元素才能在提交表單時傳遞數據。
    具體用途有:
    1、作為可與服務器交互數據的HTML元素的服務器端的標示。 2、對于標簽類型radio, checkbox的分組,是根據相同的name屬性來實現的。例如checkbox中,name需一致,則選項才為一類、一組。Radio中,name需一致。 3、其它用途有待學習。
  • value=”123..” : value屬性規定輸入字段的初始值。value里的值是提交給后臺,只有將選項確定了value值后,后臺才可以看到提交的信息。
    注意:瀏覽器把數據傳遞給后端時,把數據組裝成k=value的形式;其中,name就是k,而value就是等號后的值,給后臺(服務器)識別,然后進行處理。因此所有的表單元素標簽里要有name, 而value屬性有兩種情況:1、當數據要選擇時,則必須有對應選擇項的value值,例如radio、checkbox;2、當數據要輸入時,則提交輸入的數據,如text、password。這里的數據可以輸入,也可以在input標簽中設置初始value值。值得注意的是在textarea閉合標簽中,初始value放在開后標簽和閉合標簽之間。
  • placeholder屬性,用來描述輸入字段預期值的提示,不影響數據的value值。
  • 其它屬性:readonly屬性(規定輸入字段為只讀),disabled屬性(規定輸入字段是禁用的);size屬性(規定輸入字段的尺寸);maxlength屬性(規定輸入字段允許的最大長度,以字符計)。
  • HTML5新增屬性,以后補充。

2、常見表單元素標簽的用法

2.1 type="text"

<label for="input_username">姓名:</label> <input type="text" name="username" id="input_username" placeholder="用戶名"/>
效果:


注意:輸入文本,顯示文本,單行輸入,不可換行。

2.2 type="password"

<label for="input_password">密碼:</label> <input type="password" name="password" id="input_password" placeholder="密碼"/>
效果:

Paste_Image.png

注意:輸入文本,顯示??

2.3 type="radio"

      <label>性別:</label>
      <input type="radio" name="sex" value="famle"/>男
      <input type="radio" name="sex" value="male"/>女

效果:

Paste_Image.png

注意:單選框, name要相同才能實現單選,且需要設置好value=""

2.4 type="checkbox"

` <label>愛好:</label>
 <input type="checkbox" name="hobby" value="dota"/>dota
 <input type="checkbox" name="hobby" value="travel"/>旅游
 <input type="checkbox" name="hobby" value="pet"/>寵物 `

效果:

Paste_Image.png

注意:name一致,需要設置value="",否則在后臺無法顯示選擇,只是顯示大類”name”。

2.5 select 下拉菜單

<label>我的car:</label> <select name="transportation"> <option value="bus">公交</option> <option value="subway" selected>地鐵</option> <option value="taxi">出租車</option> </select>
效果:

Paste_Image.png

注意:也需設置name,value若需默認選擇某一項,則在對應此項的option里加入 selected。

2.6 type="textarea"

<label >評論:</label> <textarea name="recomment" placeholder="ddd" cols="60" rows="10"></textarea>
效果:

Paste_Image.png

2.7 type="file"

<label for="zjz">證件照:</label> <input type="file" name="photo" id="zjz" accept="image/jpg"/>
其中accept規定了文件格式。
效果:

Paste_Image.png

2.8 type="hidden"

<input type=”hidden” name=”abc” value=”123”>
點擊提交時,hidden里隱藏的數據也提交給了后臺;abc=’123’
作用:(1)暫存信息,(用戶看不到),便于設計者隨時調用程序。
(2)用于安全性校驗,例如通過設置hidden隱藏域,服務器可以驗證用戶權限,避免偽造的假網站提交數據。

2.9 type="button"

<input type="button" value="按鈕"/>
效果:

Paste_Image.png

2.10 type="submit"

<input type="submit" value="提交"/>
效果:

Paste_Image.png

2.11 type="reset"

<input type="reset" value="復位"/>
效果:

Paste_Image.png

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 一、表單 1. 表單的作用 HTML 表單用于接收不同類型的用戶輸入,用戶提交表單時向服務器傳輸數據,從而實現用戶...
    zx9426閱讀 442評論 0 1
  • HTML 表單用于搜集不同類型的用戶輸入。 元素定義 HTML 表單,相當于表單的外殼,用于把用戶輸入的不同類型...
    lingfighting閱讀 451評論 0 1
  • HTML 表單用于搜集不同類型的用戶輸入。用戶提交表單時向服務器傳輸數據,從而實現用戶與Web服務器的交互。HTM...
    FLYSASA閱讀 444評論 0 0
  • 表單是一個包含表單元素的區域,而表單元素是運行用戶在表單中輸入信息的元素。通過表單,用戶可以向服務器提交數據,而服...
    饑人谷_半島王子閱讀 549評論 0 51
  • 原憂塞外十月: 秋深樹枝禿, 風過處, 只剩光桿, 何處尋秋色? 忐忑盤山徐行, 頻按快門, 惟恐錯過紅葉。 一路...
    葉知秋yzq閱讀 282評論 0 1