Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 九九国产精品视频,www.伊人.com,在线观看日韩视频

          整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          HTML5表單自動(dòng)驗(yàn)證

          html5 中,在增加了大量的表單元素與屬性的同時(shí),也增加了大量在提交時(shí)對表單與表單內(nèi)新增元素進(jìn)行內(nèi)容有效性驗(yàn)證的功能,接下來我們來說1下自動(dòng)驗(yàn)證。

          在html5中,通過對元素使用屬性的方法,可以實(shí)現(xiàn)在表單提交時(shí)履行自動(dòng)驗(yàn)證的功能,在履行代碼后,將在表單提交時(shí)自動(dòng)驗(yàn)證輸入的內(nèi)容是不是為數(shù)字,如果驗(yàn)證通不過,將顯示毛病信息文字。

          
          <!DOCTYPE html>
          <html lang="en">
          <head>
              <meta charset="UTF⑻">
              <title>表單驗(yàn)證示例</title>
          </head>
          <body>
              <form action="#" method="post">
                      <input type="text" name="text" required pattern="^\w.*$">
                      <input type="submit" value="提交">
              </form>
          </body>
          </html>
          

          接下來我們來看1下在html5 中追加的關(guān)于對元素內(nèi)輸入內(nèi)容進(jìn)行限制的屬性的指定。

          1.required屬性

          html5 中新增的required屬性可以利用在大多數(shù)輸入元素上(除隱藏元素,圖片元素按鈕上)。在提交時(shí),如果元素中內(nèi)容為空白。則不允許提交,同時(shí)在閱讀器中顯示信息提示文字,提示用戶這個(gè)元素中必須輸入內(nèi)容,效果如圖

          2.pattern屬性之條件到的新增的input元素,比如email,number,URL等,要求輸入內(nèi)容符合1定的格式,對input元素使用pattern屬性,并且將屬性值設(shè)置為某個(gè)格式的正則表達(dá)式,在提交時(shí)會(huì)檢查其內(nèi)容是不是符合給定格式。當(dāng)輸入的內(nèi)容不符合給定格式時(shí),則不允許提交,同時(shí)在閱讀器中顯示信息提示文字,提交輸入的內(nèi)容必須符合給定格式,代碼以下,要求輸入內(nèi)容為1個(gè)數(shù)字與3個(gè)大寫字母:

          <!DOCTYPE html>
          <html lang="en">
          <head>
              <meta charset="UTF⑻">
              <title>表單驗(yàn)證示例</title>
          </head>
          <body>
              <form action="#" method="post">
                      請輸入指定內(nèi)容:<input pattern="[0⑼][A-Z]{3}" name="part" placeholder="輸入:1個(gè)數(shù)字3個(gè)大寫字母">
                      <input type="submit" value="提交">
              </form>
          </body>
          </html>

          履行效果以下:

          3.min屬性與max屬性

          min與max這兩個(gè)屬性是日期類型或數(shù)值類型的input元素的專用屬性,他們限制了在input元素中輸入的數(shù)值與日期的范圍。

          <!DOCTYPE html>
          <html lang="en">
          <head>
              <meta charset="UTF⑻">
              <title>表單驗(yàn)證示例</title>
          </head>
          <body>
              <form action="#" method="post">
                      請輸入數(shù)值:<input type="number" name="point" min="0" max="100" />
                      <input type="submit" value="提交">
              </form>
          </body>
          </html>

          履行效果以下:

          4.step屬性

          step屬性控制input元素中的值增加過減少時(shí)的步驟。例如當(dāng)你想讓用戶輸入的值在0與100之間,但必須是5的倍數(shù)時(shí),你可以指定step為5,代碼以下:

          
          <!DOCTYPE html>
          <html lang="en">
          <head>
              <meta charset="UTF⑻">
              <title>表單驗(yàn)證示例</title>
          </head>
          <body>
              <form action="#" method="get">
                <input type="number" name="point" step="5" />
                <input type="submit" />
              </form>
          </body>
          </html>
          

          效果以下:


          原文:http://www.wfuyu.com/htmlcss/27520.html

          <form method="提交方式" action="提交地址">

          表單元素

          </form>


          表單元素的一般語法:

          1. <input type="元素類型" name="元素名稱" />

          2. 特殊的

          <select>

          <option value="選項(xiàng)的值">選項(xiàng)的文本</option>

          ...

          </select>


          <textarea name="" rows="行數(shù)" cols="列數(shù)">值</textarea>


          表單元素

          1. 用來填的

          text : 單行文本框

          password : 密碼框

          textarea : 多行文本框

          email : 郵件地址輸入框

          url : 網(wǎng)址輸入框

          number : 數(shù)字輸入框


          屬性:

          size可以控制寬度

          maxlength可以控制最大輸入的字符數(shù)

          max(最大值), min(最小值)對number,range有效


          2. 用來選的

          checkbox : 復(fù)選框

          radio : 單選框

          select : 下拉列表框


          屬性:

          checked用于默認(rèn)選中radio和checkbox

          selected用于默認(rèn)選中select中的option選項(xiàng)

          value用于設(shè)置元素的值


          3. 用來點(diǎn)的

          submit : 提交按鈕

          reset : 重置按鈕

          button : 一般按鈕, 沒有功能

          image : 圖片按鈕, 功能上等同于submit


          4. 其它的

          file : 文件域, 用于文件上傳

          hidden : 隱藏域, 作用不明

          range:滑塊

          設(shè)置表單要注意的地方

          1. 一組radio應(yīng)該設(shè)置相同的name, 這樣才能"互斥"

          2. 除按鈕外, 其它表單元素都應(yīng)該設(shè)置name屬性

          3. 用于選擇的元素都應(yīng)該設(shè)置value

          表單元素的只讀和禁用

          readonly

          disabled

          使用label提高用戶體驗(yàn)

          label稱為"標(biāo)注", 可以擴(kuò)大表單元素的可操作區(qū)域, 點(diǎn)擊label就等價(jià)于點(diǎn)擊了對應(yīng)的表單元素.

          方式一:

          <label for="表單元素的id">文本</label>

          方式二:

          <label>

          文本

          <input />

          </label>

          使用HTML5內(nèi)置的表單驗(yàn)證

          1. 用戶提示

          <input placeholder="提示信息" />

          2. 用required實(shí)現(xiàn)必填驗(yàn)證

          <input required="required" />

          3. 用pattern實(shí)現(xiàn)復(fù)雜的文本信息驗(yàn)證(正則表達(dá)式)

          <input pattern="[a-zA-Z]{4,9}" /> //必須由4-9位字母組成

          <input pattern="1[35][0-9]{9}" /> //必須是13xxxxxxxxx或15xxxxxxxxx

          <input pattern="[\u4E00-\u9FA5]{5}" /> //必須由5位中文字符組成

          注意: email, url等元素自帶pattern驗(yàn)證規(guī)則

          文共3663字,預(yù)計(jì)學(xué)習(xí)時(shí)長11分鐘


          來源:Pexels


          表單驗(yàn)證是使用HTML5時(shí)的一個(gè)內(nèi)置特性,HTML5提供了各種驗(yàn)證屬性。作為瀏覽器端HTML和JavaScript的一部分。在將數(shù)據(jù)發(fā)送到服務(wù)器之前,我們可以使用它來驗(yàn)證表單輸入。但是,我們應(yīng)該信任發(fā)送的內(nèi)容,所以最終驗(yàn)證應(yīng)該仍然在服務(wù)器上進(jìn)行。

          當(dāng)表單輸入有效時(shí),要素將顯示:valid 偽類樣式表。如果它是無效的,那么則出現(xiàn):invalid 偽類樣式表。

          當(dāng)表單輸入無效時(shí),瀏覽器將阻止表單提交并顯示錯(cuò)誤信息。

          表單驗(yàn)證屬性

          Pattern

          Pattern應(yīng)用于文本、檢索、鏈接、電話、郵件和密碼形式的輸入元素。

          ·它將正則表達(dá)式設(shè)置為數(shù)值,然后瀏覽器對其進(jìn)行驗(yàn)證。

          Min

          該屬性適用于范圍、數(shù)字、日期、月、周、時(shí)間、本地時(shí)間等類型的輸入元素。

          ·當(dāng)輸入范圍或數(shù)字時(shí),它會(huì)檢驗(yàn)該值是否大于或等于Min屬性的給定值。

          ·當(dāng)輸入日期、月份或星期時(shí),它會(huì)檢驗(yàn)日期是否為該屬性給定日期或在給定日期之后。

          ·當(dāng)輸入時(shí)間時(shí),它會(huì)檢驗(yàn)日期和時(shí)刻是否都大于或等于該屬性給定時(shí)期。

          Max

          Max屬性是min屬性的對立面,它檢查輸入的內(nèi)容是否小于或等于該屬性的給定值。

          ·當(dāng)應(yīng)用于范圍或數(shù)字類型的輸入時(shí),它將檢查輸入的數(shù)字是否小于或等于min屬性的給定值

          ·當(dāng)應(yīng)用于日期、月份或星期等類型的元素時(shí),它將檢查日期是否小于或等于該屬性值中給定的日期。

          ·當(dāng)應(yīng)用于時(shí)間類型輸入時(shí),它將檢查日期和時(shí)間是否小于或等于min屬性的給定值。

          Required

          該屬性驗(yàn)證輸入元素是否為空。

          ·它可以用于文本、檢索、鏈接、電話、郵件、密碼、日期、時(shí)間、月份、星期、數(shù)字、復(fù)選框、錄音、文檔,以及被選中內(nèi)容和文本框等元素。

          來源:Pexels


          Step

          Step檢驗(yàn)輸入值是否為整數(shù)。

          ·若輸入日期類型的元素,它會(huì)檢查天數(shù)是否為整數(shù)。

          ·若輸入月份類型的元素,它會(huì)檢查月份數(shù)是否為整數(shù)。

          ·若輸入星期類型的元素,它會(huì)檢查星期數(shù)是否為整數(shù)。

          ·若輸入時(shí)間類型的元素,它會(huì)檢查秒數(shù)是否為整數(shù)。

          ·若輸入范圍和數(shù)字類型的元素,它會(huì)檢查范圍和數(shù)值是否為整數(shù)。

          Minlength

          Minlength屬性可應(yīng)用于文本、檢索、鏈接、電話、電子郵、密碼和文本框類型的輸入元素。

          ·它檢查用戶輸入文本字?jǐn)?shù)是否大于或等于該屬性值。

          Maxlength

          Maxlength屬性同樣可應(yīng)用于文本、檢索、鏈接、電話、電子郵、密碼和文本框類型的輸入元素。

          ·它檢查用戶輸入文本字?jǐn)?shù)是否小于或等于該屬性值。

          應(yīng)用表單驗(yàn)證屬性

          我們可以通過將表單驗(yàn)證屬性添加到元素中來使用它們。例如,編寫一份以電子郵件地址作為輸入的表單。

          第一步,輸入以下HTML語言:


          <formid='form'>
            <labelfor="email">What's  your email address?</label>
            <inputid="email" name="email" requiredpattern="[^@]+@[^\.]+\..+">
            <buttontype='submit'>Submit</button>
          </form>


          在上述代碼中,輸入元素帶有required屬性,根據(jù)設(shè)定進(jìn)行輸入。

          同時(shí),我們還以電子郵件地址的正則表達(dá)式作為值,對其添加pattern屬性。

          接著如下所示,當(dāng)輸入有效或無效時(shí),我們通過添加樣式表來改變輸入元素的邊界:


          input:invalid {
            border: 1px solid red
          }
          input:vvalid {
            border: 1px solid black
          }

          來源:view rawinput.css 平臺(tái): GitHub


          此處會(huì)用到文章開頭提及的偽類樣式來完成這一步驟。

          最后,通過調(diào)用preventDefault來添加JavaScript代碼以防止本例中的表單提交。


          constform = document.querySelector('#form');
          form.onsubmit = (e) => {
           e.preventDefault();
          }

          再舉一個(gè)檢查輸入的長度和范圍的例子。比如,編寫如下 HTML代碼來獲取用戶的姓名和年齡:


          <formid='form'>
            <labelfor="name">What's  your name?</label>
            <inputid="name" name="name" requiredminlength='5' maxlength='20'>
            <br>
            <spanid='name-too-short' hidden>Name is  too short</span>
            <spanid='name-too-long' hidden>Name is  too long</span>
            <br>
            <labelfor="age">What's  your age?</label>
            <inputid="age" name="age" type='number' requiredmin='0' max='150'>
            <br>
            <spanid='age-too-high' hidden>Age is too  high</span>
            <spanid='age-too-low' hidden>Age is too  low</span>
            <br>
            <buttontype='submit'>Submit</button>
          </form>


          輸入的姓名和年齡都具有長度和范圍屬性,當(dāng)輸入無效時(shí),可以看到以文中所示形式出現(xiàn)的輸入信息。

          與例一相同,當(dāng)輸入元素有效或無效時(shí),輸入樣式表來更改輸入框邊界:


          input:invalid {
            border: 1px solid red
          }
          input:vvalid {
           border: 1px solid black
          }


          最后,當(dāng)輸入無效時(shí)可以通過JavaScript看到驗(yàn)證信息:

          const form = document.querySelector('#form');
          const name = document.querySelector('#name');
          const age = document.querySelector('#age');
          const nameTooShort = document.querySelector('#name-too-short');
          const nameTooLong = document.querySelector('#name-too-long');
          const ageTooLow = document.querySelector('#age-too-low');
          const ageTooHigh = document.querySelector('#age-too-high');
          form.onsubmit= (e) => {
            e.preventDefault();
          }
          name.oninput= (e) => {
            nameTooShort.hidden=true;
            nameTooLong.hidden=true;
            if (e.srcElement.validity.tooShort) {
              nameTooShort.hidden=false;
            }
          if (e.srcElement.validity.tooLong) {
              nameTooLong.hidden=false;
            }
          }
          age.oninput= (e) => {
            ageTooLow.hidden=true;
            ageTooHigh.hidden=true;
            if (e.srcElement.validity.rangeOverflow) {
              ageTooHigh.hidden=false;
            }
          if (e.srcElement.validity.rangeUnderflow) {
              ageTooLow.hidden=false;
            }
          }


          在上述代碼中,將oninput事件處理程序設(shè)置為事件處理程序函數(shù),以便檢查后續(xù)輸入的有效性。

          在每個(gè)函數(shù)中,我先隱藏所有信息,這樣就不會(huì)看到過時(shí)的消息了。然后,根據(jù)設(shè)置的最小和最大長度來檢查名稱輸入是否太短或太長。

          若出現(xiàn)任何錯(cuò)誤,會(huì)在HTML中取消隱藏相應(yīng)的信息。

          來源:Pexels


          同樣,我們根據(jù)長度的最大最小設(shè)定值來檢驗(yàn)?zāi)挲g輸入值是否在所屬區(qū)間內(nèi)。若出現(xiàn)錯(cuò)誤,我們會(huì)在HTML中取消隱藏相應(yīng)的信息。

          通過HTML5和JavaScript,不需要任何函數(shù)庫就可以檢驗(yàn)各種類型輸入值的有效性。

          我們可以檢驗(yàn)長度、范圍、任何帶有正則表達(dá)式的模式等輸入元素,但在保存之前應(yīng)當(dāng)檢查服務(wù)器端,因?yàn)椴糠钟脩羧钥梢云平鉃g覽器端應(yīng)用程序來跳過驗(yàn)證。



          留言點(diǎn)贊關(guān)注

          我們一起分享AI學(xué)習(xí)與發(fā)展的干貨

          如轉(zhuǎn)載,請后臺(tái)留言,遵守轉(zhuǎn)載規(guī)范


          主站蜘蛛池模板: 亚洲色无码一区二区三区| 国产精品视频一区国模私拍| 中文字幕精品一区影音先锋| 国产精品久久久久一区二区| 国产AV国片精品一区二区| 中文字幕精品亚洲无线码一区| 99精品一区二区三区| 国产精品一区二区三区99 | 四虎在线观看一区二区| 波多野结衣一区二区三区aV高清| 中文字幕AV无码一区二区三区| 三上悠亚日韩精品一区在线| 波多野结衣在线观看一区| 国产日韩一区二区三区| 久久亚洲一区二区| 好吊视频一区二区三区| 国产精品久久久久一区二区| 日本一区二区三区爆乳| 99久久综合狠狠综合久久一区| 中文字幕一区二区三区四区 | 日本免费一区二区三区四区五六区 | 亚洲乱码国产一区网址| 亚洲.国产.欧美一区二区三区| 亚洲AV色香蕉一区二区| 综合久久久久久中文字幕亚洲国产国产综合一区首 | 亚洲AV无码一区二三区| 国产情侣一区二区| 亚洲一区二区三区在线观看网站| 亚洲一区二区三区四区在线观看| 日韩人妻无码一区二区三区久久99| 丰满人妻一区二区三区视频| 国产SUV精品一区二区88L | 国产情侣一区二区三区| 国产日韩AV免费无码一区二区三区| 日韩精品一区二区三区在线观看| 国产一区二区三区美女| 国产福利一区二区精品秒拍| eeuss鲁片一区二区三区| 欧美成人aaa片一区国产精品| 麻豆AV无码精品一区二区 | 国内偷窥一区二区三区视频|