Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

183
Views
Set value of local iteration scoped variable in angular 2

I have the below HTML in Angular

<span *ngIf="ControllerType?.AttributeID =='Controller Type'">                                            
    <select multiple name="ControllerType.Default" [(ngModel)]="ControllerType1">
        <option *ngFor="let z of ControllerType.Options" value={{z.OptionID}}>
            {{z.OptionID}}
        </option>
    </select>
</span>

What I want to know is how can I set ControllerType.Default which is of type string to get the values selected in ControllerType1. So whatever values were selected and stored in ControllerType1 should also be stored in ControllerType.Default

Doing this {{ControllerType.Default=ControllerType1;""}} after the Select tag and inside the iteration just errors out.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

use the expression inside the ngModelChange

<span *ngIf="ControllerType?.AttributeID =='Controller Type'">
   <select multiple name="ControllerType.Default" [(ngModel)]="ControllerType1"  (ngModelChange)="ControllerType.Default = ControllerType1">
   <option *ngFor="let z of ControllerType.Options" value={{z.OptionID}}>
      {{z.OptionID}}
   </option>
   </select>
</span>

updated

create and ngInit directive and call it in the HTML

@Directive({
  selector: 'ngInit',
  exportAs: 'ngInit'
}) 
export class NgInit {
  @Input() values: any = {};

  @Input() ngInit;
  ngOnInit() {
    if(this.ngInit) { this.ngInit(); }
  }  
}

assign the expression under ngInit directive

[ngInit]="ControllerType1 = ControllerType.Default"

  <span [ngInit]="ControllerType1 = ControllerType.Default"  *ngIf="ControllerType?.AttributeID =='Controller Type'">
       <select multiple name="ControllerType.Default" [(ngModel)]="ControllerType1"  (ngModelChange)="ControllerType.Default = ControllerType1">
       <option *ngFor="let z of ControllerType.Options" value={{z.OptionID}}>
          {{z.OptionID}}
       </option>
       </select>
    </span>
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!