Угловой 2 |Запретить нажатие кнопки, чтобы очистить форму - PullRequest
0 голосов
/ 03 октября 2018

В моей форме есть кнопка для добавления элемента в массив объекта.

<form (ngSubmit)="submit()" #myForm="myForm" class="form-horizontal" style="direction: ltr"> 
  <div class="row">
    <div class="col-md-6">
      <div class="form-group">
        <label class="control-label col-sm-3">Transaction ID:</label>
        <div class="col-sm-9"> 
          <input type="text" class="form-control" [(ngModel)]="asn.TRANSACTION_ID" name="TRANSACTION_ID" placeholder="Enter password">
        </div>
      </div>
    </div>
  </div>
  <div class="row">
    <div class="col-md-1 col-md-offset-11">
      <button  class="btn btn-info" (click)="AddEmptyLot($event)">Add Item</button>
    </div>
  </div>

  <div class=lot-row *ngFor="let item of asn.itemsList;let i = index">
    <div class="row lot-row">
      <div class="col-md-6">
        <div class="form-group">
          <div class="col-sm-1"><button class="btn btn-danger" type="button" (click)="removeLot(i)">X</button></div>
          <label class="control-label col-sm-3">ITEM ID:</label>
          <div class="col-sm-8"> 
            <input type="text" class="form-control" [(ngModel)]="item.ITEM_ID" name="itemid" placeholder="ITEM ID">
          </div>
        </div>
      </div>
      <div class="col-md-6">
        <div class="form-group">
          <label class="control-label col-sm-4" >Customer Part Number:</label>
          <div class="col-sm-8"> 
            <input type="text" class="form-control" [(ngModel)]="item.CUST_PART_NUMBER" name="custpart" placeholder="Customer Part Number">
          </div>
        </div>
      </div>
    </div>
  <button type="submit"  class="btn btn-default">Submit</button>
</form>

При нажатии кнопки добавления функционал работает должным образом, но форма сбрасывается.

Как я могу предотвратить это поведение?

Спасибо за помощников.

1 Ответ

0 голосов
/ 03 октября 2018

Если вам нужно сохранить значения, которые уже введены в форму, вы можете сделать

onSubmit(value) {  
  this.retainFormValues();
}

retainFormValues() {
  for (let name in this.myForm.controls) {
    this.myForm.controls[name] = this.myForm.get(name).value;
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...