使用jQuery ajax延迟2秒加载数据

5

我正在通过jQuery ajax在一个div容器中加载搜索结果。我希望结果在用户输入至少3个字母/字符或2秒延迟后显示给用户。我该如何做到这一点?

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();
    }
  });
2个回答

12

使用这个函数:

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

谢谢,如果我想让数据在用户输入前三个字母后显示怎么办? - input
如果($('input').val().trim().length > 3) { 进行 AJAX 请求(); } - Owais Lone

0

使用这个函数

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();
    }
  });

希望这能对你有所帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接