如何解决无法触发角度为 7 的文本区域的 Enter 键事件
我有用户输入内容并按下提交按钮然后光标应该移动到下一行的功能。 当用户输入一些单词并按 Enter 键时,光标应该移到 textarea 中的下一行。 我试图通过使用带有 Enter 键的键码的按键事件来使用 KeyBoardEvent 来实现此功能。下面是代码, HTML代码
<textarea #elRef id="language" class="post-text-area badge-post-textarea focus ng-pristine ng-
untouched ng-valid ng-empty" placeholder="Share your thoughts..." [(ngModel)]="content"></textarea>
<button (click)="submit()"></button>
下面的角度代码是一旦用户点击提交,我就会为 Enter 创建一个 keyevent 并调度该事件,但 Enter key 事件没有发生。 角度JS代码
@ViewChild('elRef',{ static: false }) userInput: ElementRef;
submit(){
const event = new KeyboardEvent('keypress',{ 'keyCode': 32 });
this.userInput.nativeElement.dispatchEvent(event);
return;
}
请帮忙解决这个问题
解决方法
有点想法后有一个更简单的方法,您的问题不会造成任何关键事件。 由于是双向文本区域结合,我们能够操纵变量做相同的(简单地通过在字符串末尾添加“\ n”)。 Working sample
如果有任何帮助,请确保将此标记为答案。快乐编码:)
,(keypress)="yourFunction($event)"
是负责使用键盘事件
因此,除了 (click)
之外,还要添加 (keypress)"
!
您可以使用 (keypress.enter)="yourFunction($event)"
来处理输入功能。
你所拥有的是 (click)="yourFunction()"
基本上,编写一个鼠标点击事件,事后看来这不是处理按键事件
现在,如果您希望您的功能特定于 keyup 或 keydown,您可以使用这些
(keyup.enter)="yourFunction($event)"
(keydown.enter)="yourFunction($event)"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。