今回は、Ajaxリクエストの非同期メソッドとは何なのかを説明します。どのように使用する必要がありますか? Ajax が非同期をリクエストする場合の 注意事項 は次のとおりです。実際のケースを見てみましょう。
test.html コード:
<a href="javascript:void(0)" onmouseover="testAsync()">
asy.js コード:
function testAsync(){ var temp; $.ajax({ async: false, type : "GET", url : 'tet.php', complete: function(msg){ alert('complete'); }, success : function(data) { alert('success'); temp=data; } }); alert(temp+' end'); }
tet.php コード:
<?php echo "here is html code"; sleep(5); ?>
async: false, (デフォルトは true)
上記と同様: false は同期です。 testAsync () メソッド内の Ajax リクエストはブラウザ全体をロックします。tet.php の実行が完了した後でのみ、他の操作を実行できます。
async: true の場合、ajax リクエストは非同期です。しかし、問題があります。testAsync() の ajax リクエストとその後の操作は非同期で実行されるため、tet.php が実行される前に、次のような ajax リクエストに続く操作が実行されている可能性があります。
: alert (temp+' end');
ただし、一時データはajaxリクエスト成功後に代入されるため、出力時には空になります。
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。
推奨読書:
以上がAjax で非同期をリクエストするにはどのような方法がありますか?使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。