jeudi 4 avril 2019

How to post an array of objects by a checkbox

I'm trying to initialize an array of objet type attribute checkbox but it doesn't work. (Sorry for my bad English)

MODELS

Actif

import {TypeActif} from './model.type-actif';
import {CritereActif} from './model.critere-actif';

export class Actif{
  ref: string;
  nom: string = '';
  type_actif: TypeActif = new TypeActif();
  lesCriteresActifs: Array<CritereActif> = new Array<CritereActif>();
}

CritereActif

import {Actif} from './model.actif';
import {LesCriteres} from './model.les-criteres';
import {LesValeurs} from './model.les-valeurs';

export class CritereActif{
  id: number;
  actif: Actif = new Actif();
  critere: LesCriteres = new LesCriteres();
  valeur: LesValeurs = new LesValeurs();
}

LesCriteres

export class LesCriteres{
  code: string = null;
  nom: string = '';
}

actif.component.html

<div class="form-group">
    <label>Critères : </label>&nbsp;
    <div class="checkbox-inline" *ngFor="let l of lesCriteres; let i= index">
      <label>
        <input type="checkbox" [value]="l.code" [(ngModel)]="actif.lesCriteresActifs[i].critere.code">
      </label>
    </div>
</div>

I want to add in the table "lesCritesActifs" each element of "lesCriteres" that the user will check.

Everything worked before I added in the the line :

[(ngModel)]="actif.lesCriteresActifs[i].critere.code"

I have this error in the web developpement console :

ERROR TypeError: "_co.actif.lesCriteresActifs[_v.context.index] is undefined"

Thanks !




Aucun commentaire:

Enregistrer un commentaire