首页 > 解决方案 > 角度复选框进入数组

问题描述

如何正确处理带有复选框的表单输入?我有一个表单定义:

this.cargoSignupForm = new FormGroup({
        trucksToSelect: this.fb.array([])
      });

提交功能:

onSignupForCargo(cargoId: string) {
    this.cargosService.signupForCargo(
      cargoId,
      this.cargoSignupForm.value.trucksToSelect
    )
  }

和模板:

<form [formGroup]="cargoSignupForm" (submit)="onSignupForCargo(cargo.id)" *ngIf="!isLoading">
                                      <div *ngFor="let truck of (trucksByCargoId.get(cargo.id)); let i = index">
                                        <mat-checkbox formControlName={{truck._id}} value={{truck._id}}>{{truck.regNumber}}</mat-checkbox>
                                      </div>
                                      <input type="submit" value="GO" class="button-basic">
                                    </form>

我想将选定复选框的数组(值必须是 truckId)导出到后端。感谢您的时间!

标签: javascriptangular

解决方案


我在这里看到一些问题:

  1. TrucksByCargoId.get(cargo.id) - 将此值存储在 const/var 中并在此处传递。
  2. 您将 truck._id 作为 mat-checkbox 的值,但您希望将 cargo.id 作为输出。请参阅此链接 如何从角度材料复选框中获取值

推荐阅读