Búsqueda de sitios web

angular - Obtener valores de una lista de casillas de verificación dinámica


Ve mi html:

<ion-item ion-item *ngFor="let item of items">
    <ion-label>{{ item.name }}</ion-label>
    <ion-checkbox color="secondary"></ion-checkbox>
</ion-item>

Mi .TS:

this.database.executeSql("SELECT * FROM check_item", []).then((data) => {
        this.items = [];
        if (data.rows.length > 0) {
            for (var i = 0; i < data.rows.length; i++) {
                this.items.push({ id: data.rows.item(i).id, name: data.rows.item(i).name });
            }
        }
    }, (error) => {
        console.log("ERROR: " + JSON.stringify(error));
    });

Me gustaría recuperar los valores de la casilla de verificación y guardarlos en una tabla. ¿Cómo puedo obtener los valores de una lista de casillas de verificación dinámica?

Respuesta #1

<ion-item ion-item *ngFor="let item of items;let i=index">
    <ion-label>{{ item.name }}</ion-label>
    <ion-checkbox [(ngModel)]="checkedItems[i]" color="secondary"></ion-checkbox>
</ion-item>

donde checkedItems es un arreglo del mismo tamaño que items que necesitas preparar e inicializar.

checkedItems:boolean[];

constructor() { // or whereever `items` is initialized
  this.items = ...
  this.checkedItems = new Array(this.items.length);
}

Artículos relacionados