web-dev-qa-db-ja.com

ページの読み込み後にAjax呼び出しを行う

ページの読み込み後にどのようにajax呼び出しを行うか。

10秒のドキュメントが読み込まれた後、ajax呼び出しを行う必要があります。

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

});

私はこのようにしています。しかし、成功しませんでした。

12
Anil Sharma

非常に多くの回答、わずかに異なりますが、ベストプラクティスを維持しながらDOM readyの10秒後に関数を実行する最も短い推奨構文は次のようになります。

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

Blazemongerが以下で言及するように、ドキュメントの最後に単にsetTimeout(loadajax,10000);を置くこともできますが、これを変更するほど柔軟ではありません。 jQuery DOMロードコードは常にjQuery DOMロードイベント内にある必要があります(つまり、$(function(){...});

14
Gone Coding

1000はミリ秒です。10秒は10000になります。また、 $(document).ready を探しています。

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

http://api.jquery.com/ready

5
Blazemonger

このようにしてみてください

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

あなたはこれを試すことができます:

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

バニラJavaScriptでは、次の方法でこれを行うことができます。

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