在页面加载后进行Ajax调用

时间:2014-05-05 13:01:52

标签: jquery ajax timeout settimeout

我们如何在页面加载后进行ajax调用。

我需要在加载10秒文档后进行ajax调用。

function loadajax(){
  $.ajax({ 
    url:'test',
    data:"username=test",
    type:"post",
    success:function(){
     //do action
    }
  });
}
 $('document').load(function(){
setTimeout(function(){
   loadajax();
 },10000);

});

我是这样做的。但没有成功。

5 个答案:

答案 0 :(得分:13)

DOM ready 之后10秒运行该函数的最短推荐语法,但仍然保留了最佳实践,这么多答案都是: / p>

$(function(){
    setTimeout(loadajax,10000);
});

正如Blazemonger在下面提到的那样,你可以简单地将setTimeout(loadajax,10000);放在文档的末尾,但是这不太灵活。 jQuery DOM加载代码应始终位于jQuery DOM加载事件中(即$(function(){...});

答案 1 :(得分:5)

1000是以毫秒为单位 - 十秒是10000.此外,您正在寻找$(document).ready

$(document).ready(function(){
    setTimeout(function(){
       loadajax();
     },10000); // milliseconds
});

http://api.jquery.com/ready

答案 2 :(得分:1)

尝试这样

$(function(){
  loadajax();
});

答案 3 :(得分:0)

你可以试试这个:

$(document).bind("load", function() {
//code
 });

答案 4 :(得分:0)

通过Vanilla JavaScript,您可以通过以下方式实现:

document.onreadystatechange = function(){
    if (document.readyState === "complete") {
       myFunction();
    }
    else {
       window.onload = function () {
          myFunction();
       };
    };
}