typescript - Angular 4 sätt fokus i den dynamiskt genererade textboxen med hjälp av viewChildran
Jag har den dynamiskt genererade textrutan som nedan.
<tr *ngFor="let item of data; let in=index">
<td>
<input #unitNumber type="text" name="workPerformed-workcode-{{in}}" [(ngModel)] = "item.unitnumber" >
</td>
<td> <!-- Search option is given to chose the unit number----></td>
</tr>
Här ges sökalternativet för att välja enhetsnummer, om det har valts kommer motsvarande textruta att fokuseras med hjälp av viewChildran.
Mitt försök är
@ViewChildren('unitNumber') enteredUnitNumbers;
// for searching, I have used the material dialog box
const dialogRef = this.dialog.open(SearchEquipmentComponent, dialogConfig);
dialogRef.afterClosed().subscribe(
<!-- HERE I NEED TO DO THE FOCUS ON PARTICULAR TEXTBOX ---->
// console.log(this.enteredUnitNumbers.toArray().map(x => x))
});
Ovanstående console.log visar undefined. Mitt behov är att när dialogrutan stängs ska motsvarande textruta för enhetsnummer få fokus.
Var vänlig ge lösningar
Svar #1
Följande borde räcka:
enteredUnitNumbers.toArray()[0].nativeElement.focus();
Ersätt 0 med indexet för den önskade inmatningen.
