【问题标题】:Delay load of data for 2 seconds in jQuery ajax在 jQuery ajax 中延迟加载数据 2 秒
【发布时间】:2011-03-30 16:31:18
【问题描述】:

我正在通过 jQuery ajax 在 div 容器中加载搜索结果。我希望在 2 秒延迟后或用户在文本框中输入至少 3 个字母/字符进行搜索后向用户显示结果。我该怎么做?

jQuery 代码:

$(".bsearch").keydown(function() {
  //create post data
  var postData = { 
    "search" : $(this).val()
  };

  //make the call
  $.ajax({
    type: "POST",
    url: "quotes_in.php",
    data: postData, 
    success: function(response){
      $("#left").html(response);                    
      $("div#smore").hide();
    }
  });

【问题讨论】:

    标签: jquery ajax search delay


    【解决方案1】:

    使用此功能:

    setTimeout(function() {
        $('#left').html(response);
    }, 2000);
    

    【讨论】:

    • 谢谢,如果我希望在用户输入前 3 个字母后显示数据怎么办?
    • if($('input').val().trim().length > 3) { make_ajax_request(); }
    【解决方案2】:

    使用这个功能

    function ajax_delay(str){
     setTimeout("str",2000);
    }
    

    结果将是

     $.ajax({
        type: "POST",
        url: "quotes_in.php",
        data: postData, 
        success: function(response){
    
            ajax_delay($('#left').html(response));
    $("div#smore").hide();
        }
      });
    

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多