2

好的,希望有人能帮忙。我有一个用于搜索员工的页面。要求是搜索在您键入时拉回结果。也许我正在以完全错误的方式解决这个问题,但我目前有工作代码。问题是某些结果是乱序返回的。

例如,您可能正在搜索“Don”,但“Don”的结果将在您获得“Do”的结果之前返回,而“Do”的结果将留在屏幕上。

有没有办法在开始新搜索时清除/取消任何待处理的结果,以便我只获得最新的结果?

这是代码:

    $('#searchString').keyup(function () {
        searchPeople($(this).val());
    });

    function searchPeople(searchString) {
        var bu = $('#selectedBU').val();
        $('#people_view').clearQueue().load(
            '@Url.Action("PeopleView", "People")',
            { SearchString:searchString.replace(' ', '*|*'),
              bu:bu });
        $('#searchString').focus();
    }
4

1 回答 1

0

我会使用jquery 自动完成来不重新发明轮子:)

如果您仍想实现自己的自动完成功能,则必须停止之前的 ajax 请求。您可以从这里开始,还可以查看链接的问题以获得更多建议。

于 2012-01-20T14:39:41.820 回答