增加 select 元素中的搜索时间 HTML

Increase time for search in a select element HTML

你们中的任何人都知道是否有一种方法可以在用户尝试 select select 列表中的元素时开始搜索之前增加时间 通过在 HTML.

中键入元素的名称

我可以在 HTML 中使用不同的组件而不是正常的 select,但我使用的是遗留系统,我不能过多地更改源代码。无论如何,JS 解决方案也被广泛接受

要调试并查找用户开始输入时调用了哪些函数,您可以在添加(或覆盖)原始行为的 HTML 输出的最后添加一些 JavaScript。

这可能有助于追踪问题并找出定时器值的设置位置:

document.getElementById('thatInputElement').onKeyUp = function(event)
{
    console.log(event);
};

您也可以直接从浏览器中的开发工具 Web 控制台实现这一点,而无需篡改源代码。

我认为 Lodash 去抖动 方法是一个完美的 用例

这里有一个小例子,其中函数等待触发的时间是 500:

function doSearch () {
  $('#output').html('searched: ' + $('#search').val())
}

$('#search').on('input', _.debounce(doSearch, 500));
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/3.10.1/lodash.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<input type=text id=search />
<p id=output></p>

function doSearch () {
  console.log('do search')
}

$('#search').on('input', _.debounce(doSearch, 500));