Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度4-使用Enter键聚焦下一个元素_Javascript_Angular_Typescript_Frontend_Angular Forms - Fatal编程技术网

Javascript 角度4-使用Enter键聚焦下一个元素

Javascript 角度4-使用Enter键聚焦下一个元素,javascript,angular,typescript,frontend,angular-forms,Javascript,Angular,Typescript,Frontend,Angular Forms,这个问题在AngularJS和Jquery之前就已经被问过了,但是我需要在Angular4中这样做,它稍微有些不同 情况: 我有一个带表的组件(Tablecomponent)。表格中填写了用户的输入字段。现在我想用Enter键而不是仅仅用tab键来标记这些输入字段 我在其他地方找到了这个解决方案,但它不起作用,因为“element”没有函数“focus() 我不确定,但我相信首先要做的是获取下一个元素(“此处输入”字段),然后简单地“聚焦”它。Angular有一个元素引用,您可以使用它,在Ang

这个问题在AngularJS和Jquery之前就已经被问过了,但是我需要在Angular4中这样做,它稍微有些不同

情况:

我有一个带表的组件(Tablecomponent)。表格中填写了用户的输入字段。现在我想用Enter键而不是仅仅用tab键来标记这些输入字段

我在其他地方找到了这个解决方案,但它不起作用,因为“element”没有函数“focus()


我不确定,但我相信首先要做的是获取下一个元素(“此处输入”字段),然后简单地“聚焦”它。

Angular有一个元素引用,您可以使用它,在Angular应用程序中点击类似
键的事件将更加准确

// add it to your compoenent
constructor(private elementRef: ElementRef) { }
然后你可以使用

this.elementRef.nativeElement.focus();

谢谢你的回复。我应该补充一些额外的信息。我的测试表是使用ngFor循环动态创建的。我注意到的是,我无法识别表中的下一个元素(兄弟、孩子)。每当我按Enter键时,它将返回null。但是,如果我在html中一个接一个地创建所有输入字段,它会找到下一个元素(下一个输入字段)。
this.elementRef.nativeElement.focus();