密码与angularJs不匹配
我似乎不明白为什么ng show在密码不匹配时无法显示此验证。我错过了什么密码与angularJs不匹配,angularjs,validation,Angularjs,Validation,我似乎不明白为什么ng show在密码不匹配时无法显示此验证。我错过了什么 <form name="myForm"> <div class="form-group"> <input ng-required="true" name="username" ng-minlength="3" ng-maxlength="10" ng-model="model.user.username" type="text" class="form-control"
<form name="myForm">
<div class="form-group">
<input ng-required="true" name="username" ng-minlength="3" ng-maxlength="10" ng-model="model.user.username" type="text" class="form-control" id="user-name" placeholder="Username">
<p class="errorValidationText" ng-show="myForm.username.$invalid && myForm.username.$touched">Please pick a username between 3 - 10 characters.</p>
</div>
<div class="form-group">
<input ng-required="true" name="password" ng-minlength="4" ng-model="model.user.password" type="password" class="form-control" id="password" placeholder="Password">
<p class="errorValidationText" ng-show="myForm.password.$invalid && myForm.password.$touched">Password should contain atleast 4 characters.</p>
</div>
<div class="form-group">
<input ng-required="true" name="verifyPassword" ng-minlength="4" ng-model="model.user.verifyPassword" type="password" class="form-control" id="verify-password" placeholder="Verify Password">
<p class="errorValidationText" ng-show="(myForm.verifyPassword.value != '') && (myForm.password.value != myForm.verifypassword.value)">Passwords don't match.</p>
</div>
<button ng-disabled="myForm.username.$invalid || myForm.password.$invalid || myForm.verifyPassword" ng-click="model.register(model.user)" class="btn btn-success btn-block">Register</button>
</form>
谢谢!!
我已经参考了其他解决方案,没有一个现有问题与我正在做的类似。myForm.verifyPassword.value在您的语句myForm.verifyPassword.value中的大小写不同
我编了一个例子,因为我没有你的代码
var-app=angular.module'myApp',[];
应用程序控制器'myCtrl',函数$scope{
$scope.myForm={
密码:,
验证密码:
};
$scope.submit=函数{
console.log'success';
};
};
密码:
验证密码:
密码不匹配
提交myForm对象没有输入值,您可以通过{{myForm}看到这一点。改用ngModel中的值:
<p ng-show="(user.model.verifyPassword != '') && (user.model.password != user.model.verifyPassword)">Passwords don't match</p>
还要注意,如果您的输入无效,ngModel将不会设置值:user.model.verifyPassword!=将始终为真,因为您将ng minlength设置为4
另一个提示:ng属性只有在计算范围变量时才有意义,ng required=true与required=required相同。您不能在参数本身内部使用参数的HTML分隔符。请使用简单的引号。@Blackhole是正确的。myForm.verifyPassword.value!=&myForm.password.value!==myForm.verifypassword。value@BlackHole-谢谢!但这仍然不能解决问题。请添加其余的代码,可能有问题there@MarioLamacchia我已经粘贴了剩下的代码谢谢!固定了外壳。但即使在该更改之后,也不会显示。@user1799214我还删除了每个propertyRight末尾的.value,但这样做会使验证在触及字段之前显示出来。页面加载后,标记立即显示。@user1799214在我的示例中,我使用所需的起始值初始化表单,使其有意义!!谢谢: