2017-03-24 12 views
1

私はSaveとSubmitの2つのボタンとドロップダウンとテキストボックスのいくつかを持っています。 [保存]をクリックしたときではなく、[送信]をクリックしたときにフィールドの一部を検証する必要があります。以下のコードを見つけてください。条件付きの検証AngularJSのボタンを使用して

<button class="btn btn-default custom_edit" 
          data-ng-click="orderForm.$valid && saveOrder('save')" 
          data-ng-if="!order.IsSubmitted" 
          data-ng-model="status" 
          value="save">Save</button> 
<button class="btn btn-success" 
          data-ng-click="orderForm.$valid && saveOrder('submit')" 
          data-ng-if="!order.IsSubmitted" 
          data-ng-model="status" 
          value="submit">Submit</button> 

<input type="text" class="form-control" name="_requisition" placeholder="Requisition" 
             data-ng-model="order.Requisition" 
             data-ng-trim="true" 
             data-ng-required="status=='save'"/> 

私はボタン付きの値&モデルを使用してみましたし、NG-必要な、しかし、それは働いていないと、それを適用しています。

答えて

0

入力タイプを「送信」として使用すると、検証が維持され、他の機能もフォームが有効であると同時に呼び出すことができます。

<input type="submit" value="Save" 
          data-ng-click="isSave = true; orderForm.$valid && saveOrder('save')" 
          data-ng-model="isSave" 
          data-ng-show="!order.IsSubmitted"/> 
<input type="submit" value="Submit" 
          data-ng-click="isSave = false; orderForm.$valid && saveOrder('submit')" 
          data-ng-model="isSave" 
          data-ng-show="!order.IsSubmitted"/> 

<input type="text" class="form-control" name="_requisition" placeholder="Requisition" 
          data-ng-model="order.Requisition" 
          data-ng-trim="true" 
          maxlength="100" 
          data-ng-required="isSave"/> 

このようにして、実行時にボタンのクリックでモデル値を簡単に設定し、フォームを検証することができます。