در این قسمت از آموزش Ajax ، خاصیت readystate -بررسی وضعیت شی XMLHttpRequest را برای شما در مقالات طراحی سایت بیان می کنیم .
به طور کل خاصیت readystate وضعیت شی xmlhttprequest را در هر لحظه نگهداری می کند .برای انجام این کار 3 خاصیت یا رویداد در هنگام کار با xmlhttprequest وجود دارد که توسط آن جواب را از سرور دریافت می کنند .
√ onreadystatechange : این خاصیت یک تابع را نگهداری می کند . هر زمان که وضعیت خاصیت Ready State شی XMLHttpRequest تغییر کند این رویداد رخ می دهد و تابع را اجرا می کند .
√ readyState : این خاصیت وضعیت شی XMLHttpRequest را در هر لحظه مشخص می کند . این شی می توان 4 حالت را داشته باشد که بنابر آن یکی از اعداد 0 تا 4 را برمی گرداند :
0 : جوابی برای درخواست دریافت نشده است .
1 : اعتبار با سرور برقرار شده است .
2 : درخواست به سرور رسیده است .
3 : سرور در حال پردازش درخواست است .
4 : درخواست بطور کامل انجام شده و پاسخ آماده است .
√ status : این پارامتر وضعیت کلی درخواست و شی را مشخص می کند . که می تواند 2 حالت داشته باشد :
1 : ok=200
یعنی وضعیت درست است .
2 : Page not found=400
یعنی صفحه پیدا نشده است .
لازم به ذکر است بدانید در رویداد onreadystatechange تابعی را تعیین می کنیم تا در صورتی که جواب سرور به درخواست ما آماده و ارسال شد عمل مورد نظرمان را انجام دهد . این عمل مورد نظر معمولا عملیات به روز رسانی بخش تغییر کرده در صفحه را انجام می دهد .
در مثال زیر ، در یک دستور شرطی بررسی کرده ایم که اگر جواب سرور یعنی پارامتر readyState دارای مقدار 4 که به معنای اتمام پردازش درخواست و آماده بودن جواب است ، بود . سپس وضعیت شی نیز بررسی شود تا چنانچه مقدارش 200 به معتی ok عملیات است ، سپس دستور به روز رسانی در صفحه اجرا شود :
xmlhttp.onreadystatechange=function( )
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}