使用ng-if的正则表达式

时间:2014-12-05 17:48:18

标签: regex angularjs

  <div class="row" ng-if="MyTest.Item.MyPassword != MyTest.Item.ConfirmPassword">
       <div class="col-md-12">
      <p class="red-color"> Password must be between 4 and 8 digits long and include at least one numeric digit And Passwords must match! </p>
        </div>
 </div>

我需要在&#34; Mypassword!= ConfirmPassword&#34;时显示上述消息。和正则表达式&#39; / ^(?=。* \ d)。{4,8} $ /&#39;密码字段未实现。如何使用ng-if的正则表达式?任何帮助将受到高度赞赏。

2 个答案:

答案 0 :(得分:2)

在你看来:

ng-if="isValid()"

在您的控制器中:

$scope.isValid = function(){
   return MyTest.Item.MyPassword == MyTest.Item.ConfirmPassword 
          && yourRegexp.test(MyTest.Item.MyPassword);
}

答案 1 :(得分:0)

在输入字段中,添加所需的模式。

<input type="password" ng-model="MyTest.Item.MyPassword" ng-pattern="/^(?=.*\d).{4,8}$/"/>

这将确保您的表单$valid为真

并在div添加其他条件:

ng-if="MyTest.Item.MyPassword != MyTest.Item.ConfirmPassword && myForm.$invalid"