我在这里有这个脚本:
@H_403_11@angular.module('UserValidation',[]).directive('validPasswordC',function () {
return {
require: 'ngModel',link: function (scope,elm,attrs,ctrl) {
ctrl.$parsers.unshift(function (viewValue,$scope) {
var noMatch = viewValue != scope.signupForm.password.$viewValue
ctrl.$setValidity('noMatch',!noMatch)
})
}
}
});
这是html:
@H_403_11@<div class="fieldset" ng-class="{'has-error':formData.password.$invalid && !formData.password.$pristine}"> <label>Password</label> <input type="password" id="password" name="password" ng-model="formData.password" ng-minlength="8" ng-maxlength="20" ng-pattern="/(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z])/" placeholder="password" required /> <p ng-show="signupForm.password.$error.required" class="error">*</p> <p ng-show="signupForm.password.$error.minlength" class="error"> Passwords must be between 8 and 20 characters.</p> <p ng-show="signupForm.password.$error.pattern" class="error"> Must contain one lower & uppercase letter,and one non-alpha character (a number or a symbol.)</p> </div> <div class="fieldset" ng-class="{'has-error':formData.password_c.$invalid && !formData.password_c.$pristine}"> <label for="password_c">Confirm Password</label> <input type="password" id="password_c" name="password_c" ng-model="formData.password_c" placeholder="confirm password" valid-password-c required /> <p ng-show="signupForm.password_c.$error.noMatch" class="error">Passwords do not match.</span> <p ng-show="signupForm.password_c.$error.required" class="error">*</p> </div>密码的字符验证工作正常,但确认密码的“noMatch”功能不起作用.
可能是什么问题?谢谢!