这是我将重点放在Angular 6中的字段上的方法。首先,我在HTML中声明该字段:
<input type="text" name="myfield" [(ngModel)]="myfield" id="myfield" #focusMe />
然后用Java语言编写:
@ViewChild('focusMe') focusMe: ElementRef;
.....
this.focusMe.nativeElement.focus();
但是我有一张桌子,我需要把重点放在第一个元素上。我不知道如何设置#focusMe
:
<table>
<tr *ngFor="let f of fields; let i = index">
<td>
{{f.name}}
</td>
<td>
<input type="text" name="field{{i}}" [(ngModel)]="f.value"
id="field{{i}}" />
</td>
</tr>
</table>
如何将焦点设置在第一个输入字段上?
答案 0 :(得分:1)
效率低下,但是您可以使用first
的{{1}}属性:
@ViewChildren
<table>
<tr *ngFor="let f of fields; let i = index">
<td>
{{f.name}}
</td>
<td>
<input #focusMe type="text" name="field{{i}}" [(ngModel)]="f.value" id="field{{i}}" />
</td>
</tr>
</table>