我有下面的代码,它可以检测任何文本输入到#search-box
字段,然后立即运行搜索(如果大于2个字符):jQuery的 - 搜索的文本输入 - 延迟,直到足月进入
$('#search-box').on('input', function() {
var term = $(this).val();
if (term.length > 2) {
//execute search and display results
}
});
虽然这看起来并不漂亮,例如,如果您输入dollar
,在“玩偶”之后会出现一大堆玩偶,然后一旦输入dolla
就会用美元代替。这可能会在瞬间发生。
我想要做的是确定用户是否已完成搜索词。在搜索之前是否可以等待一秒钟或两秒钟?如果在等待期间用户输入另一个字母,它会重置时钟?
因此,基本上你需要如果用户输入dolla并且他想输入美元,那么我们将跳过所有请求,并且最终请求将是美元。当他完成键入美元,然后搜索请求将运行..? –
是的!理想情况下,如果用户停止输入2秒钟,请运行请求。否则,跳过请求。 – Lee