搜尋

首頁  >  問答  >  主體

角度下拉列表不讀取值

我是 Angular 的新手,所以如果我有任何錯誤,請原諒我。我正在嘗試在下拉列表中獲取創建的列表,當用戶選擇它時,它應該將資訊記錄到資料庫中。

這是我的程式碼: Component.html

<mat-form-field appearance="fill">
  <mat-label>Retrieval Reason</mat-label>
  <mat-select [formControl]="RR" required>
    <mat-option>--</mat-option>
    <mat-option *ngFor="let reason of reasons" [value]="reason">
      {{reason.reason}}
    </mat-option>
  </mat-select>
  <mat-error *ngIf="RR.hasError('required')">Please choose a reason</mat-error>
</mat-form-field>

  <button
    mat-raised-button
    (click)="done()"
    color="primary"
    [disabled]="selection.selected.length === 0 || RR.hasError('required')"
  >
    Retrieve
  </button>

Component.ts

#
retrievalReason: Reasons;
    RR = new FormControl('', Validators.required);

  reasons: Reasons[] = [
    {reason: 'Cycle Count'},
    {reason: 'Purge Request'},
    {reason: 'Picking'},];

    done() {
    this.dialogRef.close({
      carrier: this.carrier,
      destination: this.selection.selected[0].dstId,
      retrievalReason: this.RR.get('reasons').value,
    });
  }

我查找了從下拉清單中讀取值的 Angular 方法,並嘗試了不同的變數名稱,但到目前為止沒有任何效果。

P粉513316221P粉513316221272 天前303

全部回覆(1)我來回復

  • P粉022723606

    P粉0227236062024-02-22 17:14:16

    我認為唯一可能錯誤的是您嘗試 retrievalReason: this.RR.get('reasons').value 但這是為了獲取表單控制項的表單。

    您只有一個表單控件,因此只需 retrievalReason:this.RR.value 就足夠了。

    回覆
    0
  • 取消回覆