javascript - 如何以角度选择输入类型文本的最后一个子项?
问题描述
如何在 nGfor 中获取输入类型文本的最后一个孩子?第一个孩子:
span:first-child > input[type=text]
解决方案
您可以使用 ViewChildren(在stackblitz中,如果您在新窗口中打开页面,首先最后一个元素获得焦点,每次按下“添加按钮”时最后一个元素也获得焦点。
这个想法是有一系列带有参考名称的输入,例如输入
<p *ngFor="let i of elements"><input #input ></p>
你定义
@ViewChildren('input') inputs:QueryList<ElementRef>
在 ngAfterViewInit 中
ngAfterViewInit() {
this.inputs.last.nativeElement.focus()
this.inputs.changes.subscribe(() => {
this.inputs.last.nativeElement.focus()
})
}
如果我们的代码允许更改输入的数量,我们必须订阅 this.inputs.changes。
注意:在stackblitz中,我使用一个典型的管道(takeWhile(()=>this.alive)取消订阅销毁组件
推荐阅读
- r - 使用 step_naomit 进行预测并使用 tidymodels 保留 ID
- r - R:如何在动画包中指定分辨率/质量
- node.js - Nightwatch.js - 如何在不重复代码的情况下通过多个链接并输入值?
- javascript - 在 android studio 资产中的 .js 文件中调用 javascript 方法
- c++ - 如何使用模板生成常规参数列表并将其传递给运行时函数?
- c - 如何定义符合 MISRA 2012 规则 5.2 的变量名称?
- c++ - std::function 指针错误:无法将 &A::a 转换为 std::function<>&& 类型
- javascript - 超过 2 个条件的三元运算符
- c - Sprintf_s 给了我奇怪的盒子而不是字符串
- php - 如何在 Gloudemans/Shoppingcart 中为 laravel 编辑选项键值?