2017-04-11 96 views
0

我創建一個表單,並試圖把在以下密碼驗證:AngularJS 1.x:如何以ng模式顯示自定義消息?

至少8,至少1大寫字母,1個小寫字母,1號和特殊字符:

使用以下regrex:

"/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[[email protected]$!%*?&])[A-Za-z\[email protected]$!%*?&]{8,}/" 

代碼:

Password:<input type="text" name="pass" ng-model="password" ng-pattern="/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.{8,}$)(?=.*[[email protected]$!%*?&])[A-Za-z\[email protected]$!%*?&]/" required /> 
<span style="color:Red" ng-show="personForm.pass.$error.required"> Required! </span> 
<span style="color:Red" ng-show="personForm.pass.$dirty&&personForm.pass.$error.pattern">Please Enter Valid Pass</span> 

現在,我想要做的是顯示動態信息給用戶作爲他填寫密碼。例如。如果他填充了大寫,小寫字母,特殊字符但未填充數字,我想顯示「密碼應包含數字」。 是否可以不點擊提交? 或者我應該點擊按鈕來代替它?

回答

0

我不認爲你可以這樣做,給你的密碼組合的一個小消息,並把提交按鈕處於禁用狀態,直到你的密碼無效。

0

正確答案是使用ngMessages。請參閱here(自1.3版本以來,我認識到這可能對於本文來說太新了)。

相關問題