首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自动完成建议输入框填充条形码扫描器

自动完成建议输入框填充条形码扫描器
EN

Stack Overflow用户
提问于 2018-07-08 06:23:15
回答 2查看 656关注 0票数 1

我试图实现自动完成搜索,我将写一些东西,相关数据将显示在自动完成搜索,但我想填补输入框中的条形码扫描仪输入以及。当输入框充满扫描器时,它将提示相关数据。但是我在写东西时所面临的问题--它显示了相关的数据--但是当条形码扫描输出被填充到输入框时,它并不意味着..。我该如何实现呢?

HTML代码:

代码语言:javascript
复制
<input type="text" required autofocus  class="form-control m-input" id="customerSearch" placeholder="Customer name">

JavaScript代码:

代码语言:javascript
复制
    $('#customerSearch').autocomplete({
       source: '{!! asset('customerSearch') !!}',
       select: function(suggestion,ui) {
           // $("#customer_id").val(ui.item.id);           
       }
    })
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-08 06:53:23

自动聚焦是在按键事件中触发的,所以代码扫描器不会触发它。在更改输入后,必须自己触发事件。试试这个:

代码语言:javascript
复制
  $('#customerSearch').on('input', function(){
     $('#customerSearch').trigger('keydown');
  });
票数 1
EN

Stack Overflow用户

发布于 2018-07-08 06:54:17

在输入中插入值不会触发事件。

我建议尝试下面的方法来触发一个事件,如果它有效,那么该事件应该触发jQuery自动完成来更新。

创建一个事件:

代码语言:javascript
复制
const event = new Event('keydown')

然后发送此事件:

代码语言:javascript
复制
customerSearch.dispatchEvent(event)

这在jQuery中也是可能的:

代码语言:javascript
复制
jQuery('#customerSearch').trigger('keydown')
// or
$('#customerSearch').trigger('keydown')

您需要在代码扫描器更改输入值之后触发/分派事件。看起来是这样的:

代码语言:javascript
复制
customerSearch.value = codeScannerValue
// or however it actually works

$('#customerSearch').trigger('keydown')
// or
customerSearch.dispatchEvent(new Event('keydown'))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51229391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档