【问题标题】:Hide keypad in angular 6在角度 6 中隐藏键盘
【发布时间】:2018-07-24 20:32:40
【问题描述】:

我有一个在后台伪装的输入框。基本上,我正在为 Honeywell CT50 设备开发一个应用程序,它使用激光扫描来扫描条形码和二维码。由于激光扫描仪需要一个输入框来包含条形码的值,一旦扫描,作为焦点输入框的默认行为,键盘就会出现在手机屏幕上。我不希望键盘出现,因为扫描仪正在读取该值。我正在使用 angular 6 开发应用程序。由于键盘从屏幕底部弹出,我也面临一些有关垂直滚动的问题。

我尝试使用以下方法隐藏键盘:

<input #barcodeInput onfocus='blur()'>

以上都行不通。

然后我尝试了以下方法:

@ViewChild('barcodeInput') barcodeInput: ElementRef;
this.barcodeInput.nativeElement.dismissSoftInput();

上面的也不行。

我卡住了,无法继续。当我加载特定组件时,我必须隐藏键盘,将注意力集中在隐藏的输入框上,这样激光扫描仪就可以在没有任何点击的情况下工作,然后在处理完隐藏文本框的值后清除该值。

请给我一个解决方案!

【问题讨论】:

  • 只使用&lt;input type="hidden"&gt; 怎么样?这些输入是如何使用的?这是通过&lt;form&gt; 还是通过 AJAX 完成的?您将无法阻止键盘通过文本输入焦点弹出。
  • 或者,考虑这里使用的解决方案:stackoverflow.com/q/7610758/691711

标签: javascript angular angular6 honeywell


【解决方案1】:

我知道这个问题太老了,但可能还有一些需求。

就我而言,我有一个应用程序: AppComponent -&gt; ComponentWithInput 并使用 html:

<div class="app-container" (click)="onClick()">

    <component-with-input></component-with-input>

</div>

我所做的一切都是添加(click)="onClick()"

您可以像我一样将方法留空:

onClick() {
    // EMPTY
}

这对我有用。

【讨论】:

    猜你喜欢
    • 2014-04-09
    • 1970-01-01
    • 1970-01-01
    • 2014-11-14
    • 2011-03-24
    • 2010-10-01
    • 1970-01-01
    • 2017-03-19
    • 2020-09-17
    相关资源
    最近更新 更多