能夠根據用戶在表單中輸入的內容給出實時視覺反饋是非常重要的。在人與人溝通的語境中,表單驗證給出來的反饋同獲得正確輸入同等重要。
表單驗證不僅能給用戶提供有用的反饋,同時也能保護我們的Web應用不會被惡意或者錯誤的輸入所破壞。我們要在Web前端盡力保護后端。
AngularJS能夠將HTML5表單驗證功能同它自己的驗證指令結合起來使用,并且非常方便。AngularJS提供了很多表單驗證指令。
<form name="form" novalidate> <label name="email">Your email</label> <input type="email" name="email" ng-model="email" placeholder="Email Address"/></form>
要使用表單驗證,首先要確保表單像上面的例子一樣有一個 name 屬性。
所有輸入字段都可以進行基本的驗證,比如最大、最小長度等。這些功能是由新的HTML5表單屬性提供的。
如果想要屏蔽瀏覽器對表單的默認驗證行為,可以在表單元素上添加 novalidate 標記
1. 必填項 required
驗證某個表單輸入是否已填寫,只要在輸入字段元素上添加HTML5標記 required 即可:
注釋:required 屬性適用于以下 <input> 類型:text, search, url, telephone, email, password, date pickers, number, checkbox, radio 以及 file
<input type="text" required />
2. 最小長度 ng-minleng="{number}"
驗證表單輸入的文本長度是否大于某個最小值,在輸入字段上使用AngularJS指令 ng-minleng="{number}"
<input type="text" ng-minlength="5" />
3. 最大長度 ng-maxlength="{number}"
驗證表單輸入的文本長度是否小于或等于某個最大值,在輸入字段上使用AngularJS指令 ng-maxlength="{number}"
<input type="text" ng-maxlength="20" />
4. 模式匹配 ng-pattern="/PATTERN/"
使用 ng-pattern="/PATTERN/" 來確保輸入能夠匹配指定的正則表達式:
<input type="text" ng-pattern="[a-zA-Z]" />
5. 電子郵件
驗證輸入內容是否是電子郵件,只要像下面這樣將 input 的類型設置為 email 即可:
<input type="email" name="email" ng-model="user.email" />
6. 數字
驗證輸入內容是否是數字,將 input 的類型設置為 number :
<input type="number" name="age" ng-model="user.age" />
7. URL
驗證輸入內容是否是URL,將 input 的類型設置為 url :
<input type="url" name="homepage" ng-model="user.facebook_url" />
新聞熱點
疑難解答
圖片精選