淺談HTML表單(二):表單元素

一、實(shí)踐

1、貼上完整的代碼圖:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
  <div class="login">
        <input type="text" name="sex">
        <form action="/a123" method="get">
            <div class="username">
                <label for="username">姓名</label>
            <input id="username" type="text" name="username1" placeholder="用戶名">
        </div>  
        <div class="password">
                <label for="password">密碼</label>
            <input id="password" type="password" name="password1">
        </div>
             <div class="sex">
                <label for="sex">性別</label>
                <input type="radio" name="sex" value="男">男
                <input type="radio" name="sex" value="女">女
                <!--
                <input type="radio" name="sex1" value="男">男
                <input type="radio" name="sex1" value="女">女
                -->
             </div>
              <div class="sexchoose">
                <label for="sexchoose">取向</label>
                <input type="radio" name="sex2" value="男">男
                <input type="radio" name="sex2" value="女">女
             </div>
            <div class="hobby">
                <label>愛(ài)好</label>
                <input type="checkbox" name="hobby" value="dota">dota
                <input type="checkbox" name="hobby" value="travl">旅游
                <input type="checkbox" name="hobby" value="pet">寵物
            </div>
            <div class="textarea">
                <label for="textarea">評(píng)論</label>
                <textarea name="article">
                    123
                </textarea>
                <input type="hidden" name="abcd" value="12345">
            </div>
            <div class="file">
                <input type="file" name="myfile" accept="image/png">
            </div>
            <div class="choose">
                <label for="pet">我的寵物</label>
                <select name="city">
                    <option value="cat">貓</option>
                    <option value="dog" selected>狗</option>
                    <option value="fish">魚(yú)</option>
                </select>
                <button>提交</button>
            <!--
            </div>
            <div class="submit">
                <input type="submit" value="提交">
            </div>
             -->
            <!--
            <div class="submit">
                <button>提交</button>
            </div>
            -->

        </form>

  </div>
</body>
</html>

2、效果圖:

image

二、具體標(biāo)簽:

1、form

代碼結(jié)構(gòu)如:

<form action="/a123" method="get">

form標(biāo)簽是表單的外殼,有4個(gè)主要屬性:
(1)action:表單提交的地址
(2)method:提交表單的方法
(3)target:在何處打開(kāi)action
(4)enctype

  • applicationx-www-form-urlencoded:在發(fā)送前編碼所有字符(默認(rèn))

  • textplain:空格轉(zhuǎn)換為“+”加號(hào),但不對(duì)特殊字符編碼

  • multipartform-data:使用包含文件上傳控件的表單是,必須使用該值

2、type

代碼結(jié)構(gòu)如:

<input type="text" name="sex">

(1)type="text"
普通的文本輸入框,單行輸入(不行回車(chē)換行)??奢斎胛淖终故?br> (2)type="password"
輸入密碼是以圓點(diǎn)展示,不被人知道
(3)type="checkbox"

呈現(xiàn)帶有陰影的勾選方框
代碼如下:

<div class="hobby">
    <label for="hobby">愛(ài)好</label>
    <input type="checkbox" name=>讀書(shū)
    <input type="checkbox" name=>聽(tīng)歌
    <input type="checkbox" name=>游泳
  </div>

如圖:


image

注:
A、如果是分組,name寫(xiě)成不同,表示多選,如針對(duì)hobby這個(gè)關(guān)鍵字的搜索,value值需要設(shè)置,否則后臺(tái)提交的用戶信息將顯示為on(無(wú)信息展示)。如圖:


image

B、value的作用:讓后臺(tái)來(lái)識(shí)別該字段的信息

(4)type="radio"
呈現(xiàn)帶有陰影的點(diǎn)選圓框
代碼結(jié)構(gòu)如下:

 <div class="hobby">
    <label for="sex">性別</label>
    <input type="radio" name="sex" value="male">男
    <input type="radio" name="sex" value="female">女    
  </div>

如圖:


image

注:
radio 如何分組?舉例說(shuō)明,只需要在<input type="radio" name="sex" value="男">中的name值設(shè)置另一個(gè)意義值,就可以分組顯示,如:

第1組:

<input type="radio" name="sex" value="男">男
<input type="radio" name="sex" value="女">女

第2組:

<input type="radio" name="sex1" value="男">男
<input type="radio" name="sex1" value="女">女

即:

 <div class="hobby">
    <label for="sex">性別</label>
    <input type="radio" name="sex" value="male">男
    <input type="radio" name="sex" value="female">女 
    <input type="radio" name="sex1"  value="男">男
    <input type="radio" name="sex1"  value="女">女
  </div>

如圖:


image

(5)type="file"
用于文件上傳,呈現(xiàn)“選擇文件”按鈕,點(diǎn)擊即可上傳文件

<input type="file" name="myfile"  accept="image/png,image/jp

注: accept該參數(shù)使用,即用于接收所限制的文件格式

(6)type="hidden"
作用:

  • 暫存信息。 如在type="hidden"埋下一個(gè)值,后臺(tái)定位獲取相應(yīng)的值,可安全存值,用戶什么都看不見(jiàn),只能在后臺(tái)看到;
  • 保障安全。 當(dāng)打開(kāi)一個(gè)頁(yè)面,實(shí)際上該頁(yè)面是后端寫(xiě)的模板并在里面填充數(shù)據(jù),填充好數(shù)據(jù)后,安全策略時(shí)使用type="hidden",即:
<input type="hidden" name="abc"  value="123456">

當(dāng)用戶提交用戶信息至后臺(tái),同時(shí)該安全點(diǎn)type="hidden"的值也會(huì)提交后臺(tái),后臺(tái)進(jìn)行校驗(yàn)——確認(rèn)過(guò)安全,相當(dāng)于埋在后臺(tái)與用戶信息相匹配的一個(gè)安全校驗(yàn)值,即該用戶為一個(gè)合法用戶。

(7)type="button",不能點(diǎn)擊提交

(8)type="submit",可以點(diǎn)擊提交

(9)type="reset",用于清空所有用戶信息

注:
A、以下input有何作用?

<input  type="submit" value="提交" name="提交按鈕">

B、type="submit" ,

提示input作用為“提交”按鈕

C、value="提交",

顯示提交作用,意義在于“點(diǎn)擊提交”的交互作用

D、input里name 作用?

即用于傳遞數(shù)據(jù)給后臺(tái)都形成有意義的識(shí)別值,如用value和name賦值,如果不寫(xiě)的話,該輸入標(biāo)簽將不會(huì)有任何意義,就等于無(wú)實(shí)際操作表單的意義。

3、type=hidden 隱藏域作用

type=hidden隱藏域,作為校驗(yàn)該用戶信息的一個(gè)隱藏值(判斷標(biāo)準(zhǔn))。當(dāng)用戶打開(kāi)頁(yè)面后是看不見(jiàn)type=hidden相應(yīng)的值,填寫(xiě)用戶信息之后點(diǎn)擊提交時(shí),用戶信息的數(shù)據(jù)(包括type=hidden值)隨即提交后臺(tái),打開(kāi)后臺(tái)則會(huì)展示代碼type=hidden所寫(xiě)的相應(yīng)元素屬性值。后臺(tái)校驗(yàn)type=hidden相應(yīng)值如果是正確,即用戶提交為安全。

埋點(diǎn)(保護(hù)的參數(shù))——瀏覽器提交后臺(tái)有該參數(shù)作為校驗(yàn)標(biāo)準(zhǔn)參考——若顯示錯(cuò)值或無(wú)值,服務(wù)器也將不承認(rèn)所提交的數(shù)據(jù);若為正確值,則說(shuō)明該用戶獲取權(quán)限,即為合法用戶,可防止CSRF攻擊

4、label

輸入框前的文字標(biāo)注
代碼如下:

<div class="username">
        <label for="username">姓名</label>
    <input id="username" type="text" name="username1">
</div> 

注: for,用于點(diǎn)擊文字或輸入框時(shí),是文字顯示一種focus狀態(tài),可直接輸入對(duì)應(yīng)信息

5、select

下拉菜單
代碼結(jié)構(gòu)如下:

<div class="choose">
    <select name="city">
       <label for="pet">我的寵物</label>
        <option value="cat">貓</option>
            <option value="dog">狗</option>
            <option value="fish">魚(yú)</option>                         
    </select>           
</div>

option中,設(shè)置默認(rèn)選擇的初始值,即<option value="cat" selected>貓</option>

6、textarea

實(shí)現(xiàn)多行文本,展示較大的輸入框。即常見(jiàn)的評(píng)論框。
代碼結(jié)構(gòu)如下:

<div class="textarea">
    <label for="textarea">評(píng)論</label>
    <textarea name="article">
         123
        </textarea>
</div>

注:
若在<textarea>...</textarea>中輸入任意值,即相當(dāng)于value賦值的意義,也就是說(shuō)在<textarea>...</textarea>輸入的值都能顯示其輸出的意義。

7、placeholder

用于輸入什么用戶信息的提示
代碼結(jié)構(gòu)如下:

<div class="username">
                <label for="username">姓名</label>
                <input id="username" type="text" name="username1" placeholder="用戶名">
            </div> 

圖:


image
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • ??JavaScript 最初的一個(gè)應(yīng)用,就是分擔(dān)服務(wù)器處理表單的責(zé)任,打破處處依賴服務(wù)器的局面。 ??盡管目前的...
    霜天曉閱讀 766評(píng)論 0 3
  • 22年12月更新:個(gè)人網(wǎng)站關(guān)停,如果仍舊對(duì)舊教程有興趣參考 Github 的markdown內(nèi)容[https://...
    tangyefei閱讀 35,421評(píng)論 22 257
  • 想談?wù)勎蚁矚g的一個(gè)角色,她是《公主蘇菲亞》里的米蘭達(dá)皇后。 米蘭達(dá)皇后本是鄉(xiāng)村的婦女,和女兒蘇菲亞快樂(lè)地生活在一起...
    輕似夢(mèng)閱讀 1,272評(píng)論 0 0
  • 天氣非常舒服 晴 17度。 堅(jiān)持第36天。 Anything that Mind can conceive and...
    我在走向財(cái)富自由之路閱讀 207評(píng)論 0 1
  • 《羅伯特的三次報(bào)復(fù)行動(dòng)》的作者是法國(guó)作家: 讓_克勞德.穆萊瓦 ,他曾經(jīng)獲得 法國(guó)團(tuán)結(jié)獎(jiǎng)和 比利時(shí)貝爾納.維爾拉獎(jiǎng)...
    桑妮的天空閱讀 492評(píng)論 0 1

友情鏈接更多精彩內(nèi)容