App下載

在html5中amazeui框架頁面校驗(yàn)功能案例分享!

猿友 2021-08-02 14:15:34 瀏覽數(shù) (1691)
反饋

今天我們來熟悉一下在html5中的amazeui框架吧!下面是小編分享的有關(guān)于:“在html5中amazeui框架頁面校驗(yàn)功能案例分享! ”這方面的相關(guān)知識(shí)內(nèi)容,希望對(duì)大家有所幫助!

如下圖所示:

運(yùn)行截圖 

郵政“郵政編碼”字段,數(shù)據(jù)庫(kù)中是varchar2(10)。

但是amazeui的頁面校驗(yàn)中,關(guān)于字符長(zhǎng)度的校驗(yàn)方式如下:

JS 表單驗(yàn)證

JS 表單驗(yàn)證基于 HTML5 的各項(xiàng)驗(yàn)證屬性進(jìn)行:

  • required: 必填;
  • pattern: 驗(yàn)證正則表達(dá)式,插件內(nèi)置了 email、urlnumber 三種類型的正則表達(dá)式;
  • minlength/maxlength: 字符限制;
  • min/max: 最小、最大值限制,僅適用于數(shù)值類型的域;
  • minchecked/maxchecked: 至少、至多選擇數(shù),適用于 checkbox、下拉多選框,checkbox 時(shí)將相關(guān)屬性的設(shè)置在同組的第一個(gè)元素上;
  • .js-pattern-xx: 驗(yàn)證規(guī)則 class,正則庫(kù)中存在的規(guī)則可以通過添加相應(yīng) class 實(shí)現(xiàn)規(guī)則添加。

注意:

HTML5 原生表單驗(yàn)證中 pattern 只驗(yàn)證值的合法性,也就是可以不填,如果填寫則必須符合規(guī)則。如果是必填項(xiàng),仍要添加 required 屬性。該插件與 HTML5 的規(guī)則保持一致。

<!-- 下面三種寫法等效 -->
<!-- 只內(nèi)置了 email url number 三種類型的正則,可自行擴(kuò)展 -->
<input type="email"/>
<!-- js-pattern-xx 其中 xx 為 pattern 庫(kù)中的 key -->
<input type="text" class="js-pattern-email"/>
<input type="text" pattern="^(...email regex...)$"/>

即maxlength=10,amazeui的意思是可以輸入10個(gè)字(數(shù)字、字母、漢字等同對(duì)待,都視為一個(gè)字

但是假如前段輸入了10個(gè)漢字”中中中中中中中中中中“,提交后肯定數(shù)據(jù)庫(kù)長(zhǎng)度溢出,因?yàn)樵撟侄螖?shù)據(jù)庫(kù)的長(zhǎng)度是varchar2(10)即10byte只能存3.3333個(gè)不到4個(gè)漢字(因?yàn)橐粋€(gè)漢字如果GBKGB2312編碼占2個(gè)字節(jié),但是unicodeutf-8編碼占3個(gè)字節(jié))。
 

所以僅maxlength=10不能正確的限制輸入,還要加上js-pattern-number這個(gè)限制(這個(gè)確保輸入的是整數(shù),這樣漢字就輸入不進(jìn)去了)。

總結(jié)

通過大家在閱讀完這篇文章之后對(duì)于:“在html5中amazeui框架頁面校驗(yàn)功能案例分享! ”這方面的相關(guān)內(nèi)容也有了大概的了解了吧!當(dāng)然了如果大家對(duì)于html5這方面有感興趣的話我們可以在W3Cschool中進(jìn)行一個(gè)全面的學(xué)習(xí)和了解! 


0 人點(diǎn)贊