Как сохранить выбранную дату после отправки формы? - PullRequest
0 голосов
/ 05 февраля 2019

Я использую ng-bootstrap Дата выбора в моей форме.Мне нужно сохранить значение выбранной даты после отправки формы.В настоящее время значения выбора даты пустые (сбрасываются) после отправки формы.Как сохранить выбранные значения даты выбора?

<form class="form-inline" name="form" #invoiceheaderform="ngForm" novalidate (ngSubmit)="invoiceheaderform.form.valid && save();">

С даты *

    <div class="input-group">
    <input class="form-control ngbfield" 
           name="invfromdate"  [readonly]="true" #vl="ngModel" [(ngModel)]="model.fromDate" ngbDatepicker #d1="ngbDatepicker">
    <div class="input-group-append">
      <button class="btn btn-outline-secondary fa fa-calendar" (click)="d1.toggle()" type="button"></button>
    </div>
    <!-- <div *ngIf="invoiceheaderform.submitted && vl.invalid" class="invalid-feedback">From Date is required</div> -->
  </div>

  <button type="submit" [disabled]="disableRunButton" class="btn btn-primary mb-2 expad">Save</button>

</form>

Ответы [ 3 ]

0 голосов
/ 05 февраля 2019

Проблема может заключаться в том, что значения модели сбрасываются при отправке, а так как значения связаны с помощью ngModel, значения даты также сбрасываются

Для отправки вместо прямого вызова сохранения, как указано выше, рассмотрите возможность передачи событиякак save ($ event) и вызов event.preventDefault () из функции сохранения

0 голосов
/ 05 февраля 2019

проверьте, изменяете ли вы значения модели (model.fromDate) в функции save().Поскольку это дата, возможно, вы меняете формат даты в функции save() и присваиваете обратно той же переменной.Если это так, используйте другую переменную для хранения измененных значений.

0 голосов
/ 05 февраля 2019
<div class="input-group">
  <input class="form-control ngbfield" name="fromDate"  [readonly]="true" #vl="ngModel" [(ngModel)]="model.fromDate" ngbDatepicker #d1="ngbDatepicker">
<div class="input-group-append">
  <button class="btn btn-outline-secondary fa fa-calendar" (click)="d1.toggle()" type="button"></button>
</div>

...