Latest web development tutorials

AJAX - onreadystatechangeイベント

onreadystatechangeイベント

要求がサーバに送信されると、応答に基づいて、我々はいくつかのタスクを実行する必要があります。

たびreadyStateの変更は、onreadystatechangeイベントがトリガされます。

そこのXMLHttpRequestのreadyStateプロパティのステータス情報。

ここで、XMLHttpRequestオブジェクトには、3つの重要な特性です。

属性 描述
onreadystatechange 存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。
readyState

存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。

  • 0: 请求未初始化
  • 1: 服务器连接已建立
  • 2: 请求已接收
  • 3: 请求处理中
  • 4: 请求已完成,且响应已就绪
status 200: "OK"
404: 未找到页面

onreadystatechangeイベントでは、タスクが実行されたときに処理する準備ができたときに、サーバが応答することを必要とします。

ときのreadyStateおよび200から4に等しい状態、応答レディ:

xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}

»をお試しください

注:onreadystatechangeイベントは、readyStateの変化のそれぞれに対応し、5回(0--4)がトリガされます。


コールバック関数の使い方

別の関数にパラメータとして渡されたコールバック関数です。

複数のAJAXのタスクがサイト上に存在する場合は、 標準関数を記述するためにXMLHttpRequestオブジェクトを作成する必要があり、および機能は、各AJAXのタスクのために呼ばれています。

URLは、関数呼び出しが含まれている必要があり、作業はonreadystatechangeイベントを行った(各呼び出しは変更になる場合があります)発生します。

function myFunction()
{
loadXMLDoc("ajax_info.txt",function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
});
}

»をお試しください