Jquery ajax在获取页面之前等待

时间:2016-01-01 17:40:59

标签: javascript php jquery html ajax

Hellp人......让我们拿一个简单的ajax代码......

    $.ajax({
      method: "POST",
      url: "some.php",
      data: { name: "John", location: "Boston" }
    })
      .done(function( msg ) {
        alert(msg.html());
      });

我在等待5秒后试图取msg.html()?所以过程如下......

  1. 将数据发送至some.php
  2. 等待5秒
  3. 然后返回html页面数据。
  4. 我们怎样才能做到这一点?

2 个答案:

答案 0 :(得分:0)

使用setTimeout,setTimeout()方法调用函数或在指定的毫秒数后计算表达式。该功能仅执行一次。

如果你想获取html的{​​{1}},那么首先要确保msg是有效的HTML字符串,在获取msg之前请将其转换为.html()的jQuery对象。

$(msg)

答案 1 :(得分:-2)

$.ajax({
      type : 'POST',
      url  : 'some.php',
      data :{ name : 'John', location : 'Boston'},
      beforeSend : function(){
        //you can do whatever you want here (loading gif etc.) until some.php responds 
      },
      complete : fuction(){
    //Here is for after responding
      },
      success : function(data){
      //data is the response of some.php, you can use the data to fill some elements in DOM etc.
    }


    });

    setTimeout(function(){
    //the codes you write here fires after 5 secs
    },5000);

你可以把它传递到你想要的地方。