久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

詳解HTML5中表單驗(yàn)證的8種方法介紹

表單驗(yàn)證就是在表單提交服務(wù)器前對(duì)其進(jìn)行一系列的檢查并通知用戶糾正錯(cuò)誤,本篇文章主要介紹了詳解HTML5中表單驗(yàn)證的8種方法,具有一定的參考價(jià)值,有興趣的可以了解一下。

在深人探討表單驗(yàn)證之前,讓我們先思考一下表單驗(yàn)證的真實(shí)含義。就其核心而言,表單驗(yàn)證是一套系統(tǒng),它為終端用戶檢測無效的控件數(shù)據(jù)并標(biāo)記這些錯(cuò)誤。換言之,表單驗(yàn)證就是在表單提交服務(wù)器前對(duì)其進(jìn)行一系列的檢查并通知用戶糾正錯(cuò)誤。

但是真正的表單驗(yàn)證是什么?

是一種優(yōu)化。

之所以說表單驗(yàn)證是一種優(yōu)化,是因?yàn)閮H通過表單驗(yàn)證機(jī)制不足以保證提交給服務(wù)器的表單數(shù)據(jù)是正確和有效的。另一方面,設(shè)計(jì)表單驗(yàn)證是為了讓W(xué)eb應(yīng) 用更快地拋出錯(cuò)誤。換句話說,最好利用瀏覽器內(nèi)置的處理機(jī)制來告知用戶網(wǎng)頁內(nèi)包含無效的表單控件值。過去,數(shù)據(jù)在網(wǎng)絡(luò)上轉(zhuǎn)一圈,僅僅是為了讓服務(wù)器通知用 戶他輸入了錯(cuò)誤的數(shù)據(jù)。如果瀏覽器完全有能力讓錯(cuò)誤在離開客戶端之前就被捕獲到,那么我們應(yīng)該利用這個(gè)優(yōu)勢(shì)。

不過,瀏覽器的表單檢查還不足以處理所有的錯(cuò)誤。

話雖如此,HTML5還是引入了八種用于驗(yàn)證表單控件的數(shù)據(jù)正確性的方法。讓我們依次了解一下,不過先要介紹一下用于反饋驗(yàn)證狀態(tài)的ValidityState對(duì)象。

在支持Html5表單驗(yàn)證的瀏覽器中,可以通過表單控件來訪問ValidityState對(duì)象:

var valCheck = document.myForm.myInput.validity;

這行代碼獲取了名為myInput的表單元素的ValidityState對(duì)象。對(duì)象包含了對(duì)所有八種驗(yàn)證狀態(tài)的引用,以及最終驗(yàn)證結(jié)果。

調(diào)用方式如下:

valCheck.valid

執(zhí)行完畢,我們會(huì)得到一個(gè)布爾值,它表示表單控件是否已通過了所有的驗(yàn)證約束條件。可以把valid特性看做是最終驗(yàn)證結(jié)果:如果所有八個(gè)約束條件都通過了,valid特性就是true,否則,只要有一項(xiàng)約束沒通過,valid標(biāo)志都是false。

如前所述,任何表單元素都有八個(gè)可能的驗(yàn)證約束條件。每個(gè)條件在ValidityState對(duì)象中都有對(duì)應(yīng)的特性名,可以用適當(dāng)?shù)姆绞皆L問。讓我們逐一分析,看看它們是如何與表單控件關(guān)聯(lián)的,以及如何基于ValidityState對(duì)象來對(duì)它們進(jìn)行檢查:

1、valueMissing

目的:確保表單控件中的值已填寫。

用法:在表單控件中將required特性設(shè)置為true。

示例:

<input type="text" name="myText" required>

詳細(xì)說明:如果表單控件設(shè)置了required特性,那么在用戶填寫或者通過代碼調(diào)用方式填值之前,控件會(huì)一直處于無效狀態(tài)。例如,空的文本輸入框無法通過必填檢查,除非在其中輸入任意文本。輸入值為空時(shí),valueMissing會(huì)返回true。

2、typeMismatch

目的:保證控件值與預(yù)期類型相匹配(如numbe、email、URL等).

用法:指定表單控件的type特性值。

示例:

<input type="email" name="myEmail">

詳細(xì)說明:特殊的表單控件類型不只是用來定制手機(jī)鍵盤, 如果瀏覽器能夠識(shí)別出來表單控件中的輸入不符合對(duì)應(yīng)的類型規(guī)則,比如email地址中沒有@符號(hào),或者number型控件的輸入值不是有效的數(shù)字,那么瀏 覽器就會(huì)把這個(gè)控件標(biāo)記出來以提示類型不匹配。無論哪種出錯(cuò)情況,typeMismatch將返回true。

3、patternMismatch

目的:根據(jù)表單控件上設(shè)置的格式規(guī)則驗(yàn)證輸入是否為有效格式。

用法:在表單控件上設(shè)置pattern特性,井賦予適當(dāng)?shù)钠ヅ湟?guī)則。

示例:

<input type="text" name="creditcardnumber" pattern="[0-9]{16}" title="A credit
card number is 16 digits with no spaces or dashes">

詳細(xì)說明:pattern特性向開發(fā)人員提供了一種強(qiáng)大而靈活的方式來為表單的控件值設(shè)定正則表達(dá)式驗(yàn)證機(jī)制。當(dāng)為控件設(shè)置了pattern特性后,只要 輸入控件的值不符合模式規(guī)則,patternMismatch就會(huì)返回true值。從引導(dǎo)用戶和技術(shù)參考兩方面考慮,你應(yīng)該在包含pattern特性的表 單控件中設(shè)置title特性以說明規(guī)則的作用。

4、tooLong

目的:避免輸入值包含過多字符。

用法:在表單控件上設(shè)置maxLength特性。

示例:

<input type="text" name="limitedText" maxLength="140">

詳細(xì)說明:如果輸入值的長度超過maxLength, tooLong特性會(huì)返回true。雖然表單控件通常會(huì)在用戶輸入時(shí)限制最大長度,但在有些情況下,如通過程序設(shè)置,還是會(huì)超出最大值。

5、rangeUnderflow

目的:限制數(shù)值型控件的最小值。

用法:為表單控件設(shè)置min特性,并賦予允許的最小值。

示例:

<input type="range" name="ageCheck" min="18">

詳細(xì)說明:在需要做數(shù)值范圍檢查的表單控件中,數(shù)值很可能會(huì)暫時(shí)低于設(shè)置的下限。此時(shí),ValidityState的rangeUnderflow特性將返回true。

6、rangeOverflow

目的:限制數(shù)值型控件的最大值。

用法:為表單控件設(shè)置max特性,并賦予允許的最大值。

示例:

<input type="range" name="kidAgeCheck" max="12">

詳細(xì)說明:與rangeUnderflow類似,如果一個(gè)表單控件的值比max更大,特性將返回true。

7、stepMismatch

目的:確保輸入值符合min、max及step即設(shè)置。

用法:為表單控件設(shè)置step特性,指定數(shù)值的增量。

【網(wǎng)站聲明】本站除付費(fèi)源碼經(jīng)過測試外,其他素材未做測試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請(qǐng)勿用于商業(yè)用途。如損害你的權(quán)益請(qǐng)聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。

相關(guān)文檔推薦

這篇文章主要介紹了有關(guān)HTML5頁面在iPhoneX適配問題,需要的朋友可以參考下
本篇文章主要介紹了html5中canvas圖表實(shí)現(xiàn)柱狀圖的示例,本文使用canvas來實(shí)現(xiàn)一個(gè)圖表,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
Adobe公司出品的多媒體處理軟件產(chǎn)品線較多,涵蓋了音視頻編輯、圖像處理、平面設(shè)計(jì)、影視后期等領(lǐng)域。這篇文章主要介紹了Adobe Html5 Extension開發(fā)初體驗(yàn)圖文教程,非常不錯(cuò),需要的朋
這篇文章主要介紹了基于HTML5的WebGL經(jīng)典3D虛擬機(jī)房漫游動(dòng)畫,需要的朋友可以參考下
這篇文章主要介紹了html5實(shí)現(xiàn)移動(dòng)端適配完美寫法,需要的朋友可以參考下
本篇文章主要介紹了HTML5響應(yīng)式(自適應(yīng))網(wǎng)頁設(shè)計(jì)的實(shí)現(xiàn),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
主站蜘蛛池模板: 精品一区二区三区免费视频 | 欧美色图另类 | 91传媒在线观看 | 成人网在线观看 | 日本中出视频 | 国产在线视频一区 | 日韩在线免费电影 | 精品国产一区二区三区久久 | 久久中文一区二区 | 爱爱爱av | 大伊人久久 | 欧美一级黄色片在线观看 | 欧美一级α片 | 午夜激情在线视频 | 亚洲精品99999 | 操操日| 国产精品久久久久久久久久免费 | 欧美成视频 | 91精品国产91久久久久青草 | 美日韩中文字幕 | 一级做a爰片性色毛片 | 亚洲一区二区在线播放 | 国产精品美女久久久久久久网站 | 免费一级黄色录像 | 国产 欧美 日韩 一区 | 欧美午夜激情在线 | 色久影院| 亚洲精品久久久久中文字幕欢迎你 | av在线一区二区 | 国产成人精品午夜视频免费 | 一a级片| 欧美成人精品在线观看 | 亚洲二区在线观看 | 四虎永久免费地址 | 日韩成人在线播放 | 国产成人久久精品一区二区三区 | 精品国产一级 | 99精品国产成人一区二区 | 久久精品欧美一区二区三区不卡 | 欧美日韩国产高清视频 | 亚洲综合一区二区三区 |