表单验证AngularJs
參考博客:?https://www.cnblogs.com/rohelm/p/4033513.html
常用的表單驗(yàn)證指令?
1. 必填項(xiàng)驗(yàn)證
某個表單輸入是否已填寫,只要在輸入字段元素上添加HTML5標(biāo)記required即可:
<input type="text" required /> ?2. 最小長度
驗(yàn)證表單輸入的文本長度是否大于某個最小值,在輸入字段上使用指令ng-minleng= "{number}":
<input type="text" ng-minlength="5" />3. 最大長度
驗(yàn)證表單輸入的文本長度是否小于或等于某個最大值,在輸入字段上使用指令ng-maxlength="{number}":
<input type="text" ng-maxlength="20" />4. 模式匹配
使用ng-pattern="/PATTERN/"來確保輸入能夠匹配指定的正則表達(dá)式:
<input type="text" ng-pattern="/[a-zA-Z]/" />5. 電子郵件
驗(yàn)證輸入內(nèi)容是否是電子郵件,只要像下面這樣將input的類型設(shè)置為email即可:
<input type="email" name="email" ng-model="user.email" />6. 數(shù)字
驗(yàn)證輸入內(nèi)容是否是數(shù)字,將input的類型設(shè)置為number:
<input type="number" name="age" ng-model="user.age" />7. URL
?驗(yàn)證輸入內(nèi)容是否是URL,將input的類型設(shè)置為 url:
<input type="url" name="homepage" ng-model="user.facebook_url" />?下面我們將這些表單驗(yàn)證放到具體的實(shí)現(xiàn)中來測試一下:
<div class="col-md-6"><form role="form" class="form-horizontal"><div class="form-group"><div class="col-md-4"><label for="name">1.必填項(xiàng)</label></div><div class="col-md-8"><input class="form-control" id="name" type="text" required ng-model='user.name' /></div></div><div class="form-group"><div class="col-md-4"><label for="minlength">2.最小長度=5</label></div><div class="col-md-8"><input type="text" id="minlength" ng-minlength="5" ng-model="user.minlength" class="form-control" /></div></div><div class="form-group"><div class="col-md-4"><label for="minlength">3.最大長度=20</label></div><div class="col-md-8"><input type="text" ng-model="user.maxlength" ng-maxlength="20" class="form-control" /></div></div><div class="form-group"><div class="col-md-4"><label for="minlength">4. 模式匹配</label></div><div class="col-md-8"><input type="text" id="minlength" ng-model="user.pattern" ng-pattern="/^[a-zA-Z]*\d$/" class="form-control" /></div></div><div class="form-group"><div class="col-md-4"><label for="email">5. 電子郵件</label></div><div class="col-md-8"><input type="email" id="email" name="email" ng-model="user.email" class="form-control" /></div></div><div class="form-group"><div class="col-md-4"><label for="age">6. 數(shù)字</label></div><div class="col-md-8"><input type="number" id="age" name="age" ng-model="user.age" class="form-control" /></div></div><div class="form-group"><div class="col-md-4"><label for="url"> 7. URL</label></div><div class="col-md-8"><input type="url" id="url" name="homepage" ng-model="user.url" class="form-control" /></div></div><div class="form-group text-center"><input class="btn btn-primary btn-lg" type="submit" value="提交" /></div></form> </div><div class="col-md-12">1.必填項(xiàng):{{user.name}}<br>2.最小長度=5:{{user.minlength}}<br>3.最大長度=20:{{user.maxlength}}<br>4.模式匹配:{{user.pattern}}<br>5.電子郵件:{{user.email}}<br>6.數(shù)字:{{user.age}}<br>7.URL:{{user.url}}<br></div>在測試中我們發(fā)現(xiàn),只有當(dāng)表達(dá)式滿足驗(yàn)證,才會實(shí)時進(jìn)行雙向綁定。同時我們也發(fā)現(xiàn),效果圖如下:
似乎并沒有發(fā)生什么問題,但是如果我們將其移植到一個隊(duì)HTML5驗(yàn)證不怎么好的瀏覽器再來測試一下【本例IE9】,問題來了,某些字段完全沒得驗(yàn)證
轉(zhuǎn)載于:https://www.cnblogs.com/xumBlog/p/9940863.html
總結(jié)
以上是生活随笔為你收集整理的表单验证AngularJs的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 20172322 《程序设计与数据结构》
- 下一篇: HDOJ_2010_大二写_水仙花数