当前位置: 首页 > 面试题库 >

如何通过jquery进行ajax搜索onkeyup

范书
2023-03-14
问题内容

我的脚本来调用ajax

<script language="javascript">
function search_func(value)
{
    $.ajax({
       type: "GET",
       url: "sample.php",
       data: {'search_keyword' : value},
       dataType: "text",
       success: function(msg){
                   //Receiving the result of search here
       }
    });
}
</script>

的HTML

   <input type="text" name="sample_search" id="sample_search" onkeyup="search_func(this.value);">

问题: 在onkeyup上,我正在使用ajax来获取结果。一旦ajax结果延迟增加,对我来说就会发生问题。

例如, 当键入t关键字时,我收到ajax结果,而当键入te两次键之间的ajax时间延迟有时引起严重问题时,我收到ajax结果。

当我te快速打字时。与相比,ajax搜索t关键字的时间晚了te。我不知道该如何处理这类案件。

结果te由于ajax延迟 而快速键入关键字时。t关键字的结果来了。

我相信我已经解释了读者的知识。


问题答案:

您应该检查该值是否随时间变化:

var searchRequest = null;

$(function () {
    var minlength = 3;

    $("#sample_search").keyup(function () {
        var that = this,
        value = $(this).val();

        if (value.length >= minlength ) {
            if (searchRequest != null) 
                searchRequest.abort();
            searchRequest = $.ajax({
                type: "GET",
                url: "sample.php",
                data: {
                    'search_keyword' : value
                },
                dataType: "text",
                success: function(msg){
                    //we need to check if the value is the same
                    if (value==$(that).val()) {
                    //Receiving the result of search here
                    }
                }
            });
        }
    });
});

编辑:

searchRequest添加该变量是为了防止对服务器的多个不必要的请求。



 类似资料:
  • 问题内容: 在哪里可以找到有关WDS的文档,特别是使用C#中的SQL查询来查询WDS?是否有任何资源列出可以从SystemIndex查询的列?另外,我希望查询返回“上下文”,即就像WDS客户端从找到搜索词的文档中的几行开始一样。尽管我相信3+的API是相同的,但我正在使用WDS 4.0。我检查了MSDN和其他站点,但是没有运气。 问题答案: 在MSDN论坛上发布并得到答案:可以搜索的列或属性:ht

  • 问题内容: 我正在尝试捕获ajax请求的进度。 它没有按预期工作。据我所知,id为 progressProdCounter的 Div 应该在其中包含%的内容,但在我的情况下什么也没有发生。有帮助吗? __ 在我看来,这是行不通的 HTML: JS: 问题答案: ProgressEvent.lengthComputable ProgressEvent.lengthComputable只读属性是一个布

  • 我确实在ElasticSearch中的字段中有一个数组数据,其中有一个关键字类型。我想用我想搜索的独占值搜索这个数组,即排除不包括在我的搜索关键字中的数组值。请看下面的细节。 谢了! 我有以下弹性搜索索引映射: 使用以下示例数据: 我的搜索是这样的: 我用过MatchQueryBuilder、TermQueryBuilder、TermsQueryBuilder都没用。根据ElasticSearch

  • 我对新的twitter api有一个奇怪的问题。我按照这个问题很好的答案在twitter上创建了一个搜索,并使用了TwitterAPIExchange。从这里开始。 只要我使用CURL从服务器直接调用它,一切都正常。但在实时环境中,我必须使用具有基本身份验证的代理。 我所做的只是将代理身份验证添加到performRequest函数中: 没有代理,我得到一个JSON响应。但是有了代理,我得到了: H

  • 我需要使用pymongo用python搜索一个ObjectId,但我总是得到这个错误。你知道怎么搜索吗?

  • 问题内容: 我正在尝试通过Ajax和jQuery将一些JSON格式的数据放入服务器。我的代码如下所示: 但是在服务器端,我收到一个字符串,而不是预期的JSON。萤火虫告诉我的也是一样。 错误在哪里? 问题答案: 我认为数据必须是字符串。对象将转换为查询字符串,这就是您在此处看到的内容。 您可以使用该方法将Object转换为String。JSON对象的代码可从以下网址获得:https : //git