1. 程式人生 > >angular1.0 表單校驗的一個坑(巢狀表單校驗)

angular1.0 表單校驗的一個坑(巢狀表單校驗)

 今天看阿里雲分享的一個表單校驗的視訊,本來想著做了很多校驗了,也沒有遇到什麼坑,看來還是自己做的太少~

這樣的,我手敲記錄下吧:

<form name="userForm" novalidate>  一定要有name novalidate是用來禁止瀏覽器的校驗的
  <div class="form-group" ng-repeat="user in users">
  <input type="error" name="email" class="form-control" ng-model="user.email" required>
  <p ng-show="userForm.email.$invalid"> error
 </div>
這就是一個簡單的校驗,但是如果一個輸入框錯誤了,其他的都會報錯,因為userForm.email不是唯一的,解決方式:

再加一層,<ng-form name="userFieldForm"> 用這個name加上input的name做校驗就可以了

還有一種方式,是手動去註冊父的form-controller

點選開啟連結 破狼 細說angular form addControl 這篇文章有詳細描述,又發現了個好部落格,哈哈,而且理解原始碼真是做大牛的必要步驟啊