2017-03-21 3 views
0

AngularJSの検証が機能しません。私はng-requiredを追加しました。私はAngularJSの検証が機能しません。 ng-requiredが追加されました

<ng-form id="frmdisbursementScheduleMaintenance"> 
      <div style="padding-bottom: 8px;"> 
       <button id="cm-SaveBtn" name="cm-SaveBtn" type="button" ng-click="submitted=true">Save</button> 
       <button id="cm-RefreshBtn" name="cm-RefreshBtn" type="button">Refresh</button> 
      </div> 
      <div> 
        <table> 

         <tr> 
          <td><span class="VNAVLabel">Process Begin Date: </span></td> 
          <td> 
           <span><input type="date" name="processBeginDate" ng-model="processBeginDate" required></span> 
           <span ng-show="(frmdisbursementScheduleMaintenance.processBeginDate.$dirty || submitted) && frmdisbursementScheduleMaintenance.processBeginDate.$error.required"> 
            Process Begin Date is required 
           </span> 
          </td> 
         </tr> 

        </table> 
       </div> 

</ng-form> 

答えて

2

をしないのですどこの代わりにname属性を使用する必要があり、それはidすべきではない私に教えてください。 Angularは、フォーム情報を含むfrmdisbursementScheduleMaintenanceという名前の変数$scopeを作成します。

<ng-form name="frmdisbursementScheduleMaintenance"> 
+0

グレート。それは動作します – user1030181

2

フォーム要素に「id」の代わりに「名前」を使用します。

また、(frmdisbursementScheduleMaintenance.processBeginDate.$dirty || submitted)を確認する必要はありません。frmdisbursementScheduleMaintenance.processBeginDate.$error.requiredは、このジョブを実行します。

<ng-form name="frmdisbursementScheduleMaintenance"> 
    <div style="padding-bottom: 8px;"> 
     <button id="cm-SaveBtn" name="cm-SaveBtn" type="button" ng-click="submitted=true">Save</button> 
     <button id="cm-RefreshBtn" name="cm-RefreshBtn" type="button">Refresh</button> 
    </div> 
    <div> 
     <table> 
     <tr> 
      <td><span class="VNAVLabel">Process Begin Date: </span></td> 
      <td> 
       <span><input type="date" name="processBeginDate" ng-model="processBeginDate" required></span> 
       <span ng-show="frmdisbursementScheduleMaintenance.processBeginDate.$error.required"> 
       Process Begin Date is required 
       </span> 
      </td> 
     </tr> 
     </table> 
    </div> 
</ng-form> 
+0

それを得ました。ありがとうございました! – user1030181

+0

しかし、私はページ上にない保存ボタンのクリックでエラーを表示したいだけです@Sachet Gupta。どうすればいいのですか?この場合、 – user1030181

+1

は 'ng-required =" submit "を使用します。これは、条件が真であるときに実行するために必要な検証を実行します。したがって、これはsaveがクリックされたときに必要なフィールドを検証し、入力を開始すると 'frmdisbursementScheduleMaintenance.processBeginDate。$ error.required'のためメッセージを削除します。クイック[Plnkr example here](https://plnkr.co/edit/3dF2qbyiRPcEVAy91mnr?p=preview) –

関連する問題