我有一个离子输入,允许用户添加文本注释。
我希望当文本不为空并且用户点击enter
时,离子输入会自动未聚焦。当然,我将实现逻辑以将注释文本保存到DB并显示在页面中。
我尝试了event.blur()
和textInput.nativeElement.blur()
,但没有效果。
怎么不焦点?
commentHandler(event) {
const keyCode = event.keyCode;
if (keyCode === 13 && this.commentText != "") {
this.logger.info("enter hit");
event.blur();
// this.textInput.nativeElement.blur();
}
}
<ion-item>
<ion-label floating>Add comment, then hit enter</ion-label>
<ion-input #commentInput type="text" (keypress)="commentHandler($event)" ngModel="commentText"></ion-input>
</ion-item>
答案 0 :(得分:0)
在搜索并尝试其他操作之后,这似乎对我有用。希望对您有所帮助。
myPage.ts:
import { ElementRef, ViewChild } from "@angular/core";
export class MyPage {
@ViewChild('chatInput') chatInput: ElementRef;
myFunction() {
this.chatInput['_native'].nativeElement.blur();
}
}
myPage.html:
<ion-input #chatInput ></ion-input>
受此页面启发(但他们的解决方案对我不起作用): https://forum.ionicframework.com/t/how-to-force-blur-on-ion-input/64038/6