Forms 比较两个字段和表单。$valid
我想实现的是两个我想比较的输入字段。如果相同,则表单必须有效。否则无效。代码如下:Forms 比较两个字段和表单。$valid,forms,validation,angularjs,angularjs-directive,Forms,Validation,Angularjs,Angularjs Directive,我想实现的是两个我想比较的输入字段。如果相同,则表单必须有效。否则无效。代码如下: <form name="form" class="css-form" novalidate> E-mail: <input type="email" placeholder="student@university.com" ng-model="user.email" name="uEmail" required/> <span class="err
<form name="form" class="css-form" novalidate>
E-mail: <input type="email" placeholder="student@university.com"
ng-model="user.email" name="uEmail" required/>
<span class="error" ng-show="form.uEmail.$error.email">
Not valid email!</span>
Repeat e-mail: <input type="email" placeholder="student@university.com"
ng-model="repEmail" required/>
<span ng-if="user.email != repEmail">
E-mail address are not same!
</span>
</form>
因此,如何更改表单的有效性,以便在输入字段不相同(尽管它们是有效的电子邮件地址)的情况下,表单的有效性可以为false
Repeat e-mail: <input type="email" placeholder="student@university.com"
ng-model="repEmail" required/>
重复发送电子邮件:
编辑:
而不仅仅是使用表单。$valid
使用
表单。$valid&&user.email==repEmail
这里可以使用两种方法。您可以使用validator指令(这可能是最简单的方法),也可以编写自己的指令
如果您决定使用angular ui的验证器,它将如下所示:
<input name="email" required ng-model="user.email">
<input name="confirm_email"
ui-validate=" '$value==email' "
ui-validate-watch=" 'email' ">
<span ng-show="form.confirm_emal.$error.validator">Emails do not match!</span>
电子邮件不匹配!
看看这个,希望它能帮助你,这没关系。重要的是他们必须平等。正如您所说,它也可能是电子邮件,但问题不在于您要提交页面,有两件事1.)表单应该是有效的。这可以通过表单$valid实现,在将repEmail类型设置为email
2)之后。email和repEmail是相等的
,而不是只使用
if(表单$valid)submit()
使用if(form.$valid&&$scope.user.email!=$scope.repEmail)提交我很感谢您的光临,但我对编写自定义验证器感兴趣!我已经提出了一个单独的具体问题,你能回答吗?
<input name="email" required ng-model="user.email">
<input name="confirm_email"
ui-validate=" '$value==email' "
ui-validate-watch=" 'email' ">
<span ng-show="form.confirm_emal.$error.validator">Emails do not match!</span>