相关疑难解决方法(0)

Jquery在最后一次按键后2秒运行代码

我正在为网站开发自动搜索功能.

它使用ajax来查询api.

在输入3个字符后,它将在每次按键时搜索.

我想要的是

案例1:
用户输入测试
2秒后执行搜索


情况2:
用户输入测试
1秒通过
用户按t
2秒
测试通过搜索

案例3:
用户输入测试
1秒通过
用户按下t
1.5秒通过
用户按下i
1.5秒通过
用户按下n
1.5秒通过
用户按g
2秒通过
搜索执行测试

如您所见,搜索操作仅在按键后两秒内没有按键(或粘贴等)时执行.

我的基本想法是.

on keydown调用一个设置超时的函数,该函数还设置一个包含文本框中最后一个条目的变量.当超时到期时,它会检查框中的值以查看它是否与变量中的值匹配.

如果匹配则没有变化.搜索也是如此

如果他们不做任何事情,因为后续按键的超时将跟随进行相同的检查.

这是唯一/最好的方法吗?

jquery timer keyevent

19
推荐指数
2
解决办法
1万
查看次数

标签 统计

jquery ×1

keyevent ×1

timer ×1