2016-03-28 8 views
0

を入力したとき、私はjsの角度1.4バージョンを使用していますを検証する方法。私はこれを確認してlinkと正規表現でもチェックされていますが、私を助けません。私が '2013-11-33'(上記のリンク)を試してみると、真であることを検証しています。これは間違っています。AngularJS:日付形式(DD/MM/YYYY)マニュアルは

enter image description here

私は間違った日付を入力するときに、この私の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> 

問題は、それが解雇されていないされています。私はいくつかの他のリンクやプランナーの変更を試みましたが、問題を解決しません。

+1

あなたは 'タイプ=「日付」'へのご入力を変更してみてください可能性があります。それはセレクタも提供します。 – senschen

+0

私がしようとしたが、senschen-ないすべてのブラウザは、入力タイプの日付をサポート@結果 – Ajay2707

+0

を与えません。 – RobG

答えて

0

問題は、あなたがどこにもuser.dobを検証していないことです。あなたはdobTxtは、日付の形式で入力を持っているかどうかを確認するだけで、それは有効な日付ではありませんか。 Herehereは、日付を検証する方法のいくつかの例です。

+0

これは '||'で行われます。 registerForm.dobTxt。$ error.required || registerForm.dobTxt。$ error.date 'ここにjavascript用のリンクがあります。angular.jsからアクセスします – Ajay2707

+0

Angular.jsはjavascriptフレームワークです。あなたの角度コントローラーはJavaScriptで書かれていますので、私が提供したリンクは有効で便利です。 'registerForm.dobTxt。$ error.required'は' dobTxt'に何かが存在するかどうかをチェックし、 'registerForm.dobTxt。$ error.date'はそれが有効な*日付書式*であることを確認しますが、その日付が有効であることを確認してください。自分で日付を検証する必要があります。 – senschen

+0

私は理解していますが、次に何をするか、機能を介してフォーマットをチェックする方法。上記のリンクが難しい場合は、サンプルコードを参考にしてください。 – Ajay2707