小编gvp*_*ins的帖子

Jquery ajax 搜索去抖动

我正在为一个网站构建实时搜索,该网站将根据用户键入的内容返回结果。我只希望在用户完成输入后发送请求。

我已经尝试了一些使用计时器甚至来自 underscore.js 的 debounce 方法的实现,但我似乎总是得到类似的结果。

在我打字时,请求被延迟,直到我完成打字。但是随后它似乎会触发所有输入,就好像它们已排队一样。例如,如果我输入“自行车”,结果如下:

b

bi

bik

bikes
Run Code Online (Sandbox Code Playgroud)

因此,您将获得搜索结果流。

这是我当前使用下划线 js 的实现

$('#search_term').on('keyup', _.debounce(function (e) {

       $.ajax({
            type: "GET",
             url: "quicksearch.php",
            data: { search_term:$('#search_term').val()},
            success: function(msg){
              $('#quick_search_results').html(msg).slideDown();
            }
    });

}, 100));
Run Code Online (Sandbox Code Playgroud)

谁有想法?

ajax jquery livesearch

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

标签 统计

ajax ×1

jquery ×1

livesearch ×1