当命中输入时如何使离子输入不聚焦

时间:2017-07-20 09:58:13

标签: ionic-framework ionic2 ionic3 blur

我有一个离子输入,允许用户添加文本注释。 我希望当文本不为空并且用户点击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>

1 个答案:

答案 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