首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >角度聚焦于具有ngIf的输入元素。

角度聚焦于具有ngIf的输入元素。
EN

Stack Overflow用户
提问于 2019-06-24 05:53:16
回答 3查看 2.9K关注 0票数 2

我有两个输入元素,它们在*ngIf条件下显示。

代码语言:javascript
复制
<input type="text" id="textInput" *ngIf="showTextInput">
<input type="number" id="numericInput" *ngIf="showNumericInput">

<button (click)="editButtonClicked($event)">

单击按钮应将焦点设置为适当的输入元素。

代码语言:javascript
复制
editButtonClicked(event) {
  // Focus on either #textInput or #numericInput element
}

我查看了ElementRef,给出了像#textInput这样的html输入元素标记,然后在类中定义它们,例如:

代码语言:javascript
复制
@ViewChild('textInput') textInput: ElementRef;

...but显然不适用于具有*ngIf条件的元素。

如何专注于输入元素,按钮的onClick?

EN

Stack Overflow用户

发布于 2019-06-24 06:09:43

是的,@ViewChild不适用于结构指令控制下的元素。有两个解决办法可供您应用:

  1. 删除*ngIf指令并使用CSS style: 'display:none'隐藏元素。
  2. 使用vanilla document.getElementById('someId');从DOM中选择元素,然后对元素进行对焦。

我更喜欢第1点。

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56730540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档