jquery - How to manipulate HTML elements in Angular2 -


let's have table:

enter image description here

i'd check top checkbox , have them checked, or uncheck have of them unchecked.

in jquery, this:

$("#mytable tbody :checkbox").prop('checked', true); 

you can find checkbox , applied change it.

i don't see how establish 2-ways binding checkboxex dynamically constructed.

<tr *ngfor="let trow of initconsview.bodydata">   <td *ngfor="let col of trow">     <input *ngif="col.key == 'id'"              type="checkbox" [attr.id]="'ck_' + col.value"                                                                     (change)="onchecked($event, col.value)" />                                                     <span *ngif="col.key != 'id'">{{ col.value }}</span>   </td> </tr> 

do need keep track of each chekbox through array of ids, representing each checkbox?

with 1 checkbox, this:

[checked]="somevalueinthetypescriptfile" 

i've though using nested component containing checkbox. unfortunately, problem remains same. in fact, easy send data component container. however, targeting or checkbox what's little challenging.

thanks helping

to angular way, should use bindings this. every row need have ischecked property used [(ngmodel)]="ischecked" binding.

the top checkbox trigger method loops through items used populating checkbox list , set ischecked property either true or false.

in template

<!-- top checkbox --> <input type="checkbox" (change)="onchecktop($event.target.checked)" />    <!-- other checkboxes --> <tr *ngfor="let trow of initconsview.bodydata">   <td *ngfor="let col of trow">     <input *ngif="col.key == 'id'"             type="checkbox" [attr.id]="'ck_' + col.value"                                                                    (change)="onchecked($event, col.value)"            <!-- ---------------------------------------- -->              [(ngmodel)]="trow.ischecked" /> <!-- add -->              <!-- ---------------------------------------- -->                                                   <span *ngif="col.key != 'id'">{{ col.value }}</span>   </td> </tr> 

in ts file

onchecktop(check: boolean) {   this.initconsview.bodydata.foreach(data => data.ischecked = check); } 

in ngmodule make sure add formsmodule can use [(ngmodel)] directive in template

// other imports import { formsmodule } '@angular/forms';  @ngmodule({   imports: [ ..., formsmodule ],   .... }) export class appmodule {} 

Comments

Popular posts from this blog

python - Operations inside variables -

Generic Map Parameter java -

arrays - What causes a java.lang.ArrayIndexOutOfBoundsException and how do I prevent it? -