【发布时间】:2016-03-28 13:42:23
【问题描述】:
我使用的是 Angular js 1.4 版本。我检查了这个link 并检查了正则表达式,但对我没有帮助。当我尝试“2013-11-33”(在上面的链接中)时,它的验证为真,这是错误的。
这是我的html
.. <div class="form-item">
<!--<input required ng-model="dob" placeholder="Date of Birth* dd/mm/yyyy" class="textbox-n dob" type="text" onfocus="(this.type='date')" id="dobTxt" name="dobTxt" min="1910-01-01" max="2013-12-31">-->
<input required ng-model="user.dob" placeholder="Date of Birth* dd/mm/yyyy" class="dob" type="text" id="dobTxt" name="dobTxt">
</div>
.....
<!--Validation Summary-->
<div class="alert alert-danger validationSum" role="alert" style="margin-bottom: -20px;"
ng-show="submitted &&
(registerForm.genderSelect.$error.required
|| registerForm.firstNameTxt.$error.required || registerForm.lastNameTxt.$error.required
|| registerForm.dobTxt.$error.required || registerForm.dobTxt.$error.date
|| registerForm.mobileTxt.$error.required
|| registerForm.emailTxt.$error.required || registerForm.emailTxt.$error.email || (user.email != confirmEmail) || emailExist
|| registerForm.pharmacySelect.$error.required)">
<ul>
<li ng-show="registerForm.genderSelect.$error.required">
Gender is required.
</li>
<li ng-show="registerForm.firstNameTxt.$error.required">
First name is required.
</li>
<li ng-show="registerForm.lastNameTxt.$error.required">
Last name is required.
</li>
<li ng-show="registerForm.dobTxt.$error.required">
Date of birth is required.
</li>
<li ng-show="registerForm.dobTxt.$error.date">
Not a valid date!
</li>
<li ng-show="registerForm.mobileTxt.$error.required">
Contact number is required.
</li>
<li ng-show="registerForm.emailTxt.$error.required">
Email is required.
</li>
<li ng-show="registerForm.emailTxt.$error.email">
Invalid email.
</li>
<li ng-show="isEmailMatched = (user.email != confirmEmail)">
Emails have to match!
</li>
<li ng-show="registerForm.pharmacySelect.$error.required">
Preferred pharmacy is required.
</li>
<li ng-show="emailExist">
This email has already been used to complete a questionnaire. Please contact your practitioner for your assessment.
</li>
</ul>
</div>
问题是当我输入错误的日期时,它没有被解雇。我尝试了一些其他链接和 plunker 更改,但没有解决问题。
【问题讨论】:
-
您可以尝试将输入更改为
type="date"。这也将提供一个选择器。 -
我试过了,但没有给出结果
-
@senschen——并非所有浏览器都支持输入日期类型。
标签: javascript angularjs validation date