آموزش ویژگی onreadystatechange در آجاکس جاوااسکریپت

سلام خدمت تمامی دوستان و همراهان محترم سایت آموزشی فری لرن ، امیدوارم که حال همگیتون خوب باشه. لطفا در ادامه با آموزش ویژگی onreadystatechange در آجاکس جاوااسکریپت با من همراه باشید.

آموزش ویژگی onreadystatechange در آجاکس جاوااسکریپت

Free-Learn

ویژگی onreadystatechange در آجاکس جاوااسکریپت

با استفاده از ویژگی onreadystatechange میتونیم یک تابع تعریف کنیم تا اگه وضعیت ویژگی readyState تغییر کرد بتونیم وضعیت درخواست ارسال شده بسمت سرور رو کنترل کنیم.

یعنی چی تغییر وضعیت!؟ خب ببینید دوستان وقتی درخواست به سمت سرور ارسال میشه این درخواست خب طبیعتا یک وضعیتی باید داشته باشه، مثلا آیا درخواست توسط سرور دریافت شده؟ آیا درخواست روش پردازش انجام شده؟ آیا درخواست دریافت و پردازش هم انجام شده و در نهایت آیا نتیجه درخواست آماده شده است؟؟

پس به این حالت ها میگیم وضعیت درخواست ، که میتونیم با استفاده از ویژگی onreadystatechange یک تابع رو تعریف کنیم بعدش با استفاده از ویژگی readyState خوده وضعیت رو کنترل کنیم. ( در ادامه به مثال ها توجه نمایید )

Free-Learn

نام ویژگی توضیح
readyState کنترل وضعیت درخواست
عدد ۰ یعنی درخواست هنوز آماده سازی نشده
عدد ۱ یعنی اتصال با سرور برقرار شده
عدد ۲ یعنی درخواست دریافت شده
عدد ۳ یعنی پردازش روی درخواست انجام شده
عدد ۴ یعنی درخواست بطور کامل دریافت و پاسخ آماده شده
status ۲۰۰ = OK
۲۰۳ = Non-Authoritative Information
۲۰۴ = No Content
۴۰۰ = Bad Request
۴۰۳ = Forbidden
۴۰۴ = Not Found
۵۰۰ = Internal Server Error
۵۰۲ = Bad Gateway
۵۰۳ = Service Unavailable
statusText برگشت وضعیت status بصورت رشته ( مثلا OK یا Not Found و… )

Free-Learn

نحوه تعریف تابع onreadystatechange

شکل کلی نحوه استفاده از تابع onreadystatechange بصورت زیر می باشد :

Free-Learn

نحوه چک کردن وضعیت readyState و status

توضیح مثال بالا :

گفتیم اگه وضعیت ( readyState ) برابر بود با ۴ ( تو جدول بالایی گفتم یعنی درخواست بطور کامل دریافت و پاسخ آماده شده ) و وضعیت سرور ( status ) برابر بود با ۲۰۰ ( در جدول بالا یعنی OK ) در نهایت قربون دستت نتیجه رو در صفحه نشون بده.

Free-Learn

مثال از ویژگی onreadystatechange

مثال شماره ۱ : استفاده از تابع onreadystatechange

امتحان کنید

توضیح مثال بالا :

همونطور که میبینید در خط ۷ تا ۱۱ اومدیم و با استفاده از ویژگی های onreadystatechange و readyState و status وضعیت درخواست رو بررسی کردیم و در نهایت گفتیم اگه همه چی اوکی بود خب نتیجه رو در صفحه نشون بده، به همین سادگی تموم شد رفت.

 

مثال شماره ۲ : نمایش وضعیت ویژگی status بصورت رشته یا متن ( با استفاده از statusText )

امتحان کنید

توضیح مثال بالا :

در مثال بالا ما فقط خواستیم وضعیت ویژگی status رو بدست آوریم، در نتیجه باید در خروجی مثال بالا OK چاپ بشه.

وقتی OK باشه یعنی وضعیت ۲۰۰ هست و وقتی ۲۰۰ باشه یعنی سرور پاسخ اوکی داده به درخواست ما و در مجموع همه چی اوکی هست.

Free-Learn

نکات و توضیحات

  • با استفاده از ویژگی onload میتونیم کاری کنیم که وقتی پاسخ از سمت سرور آماده بود ، اون پاسخ یا نتیجه رو در صفحه به نمایش درآوریم. [ مثال ]
  • حال وقتی از ویژگی onreadystatechange استفاده میکنیم دیگه نیاز نیست از onload استفاده کنیم.
دریافت PDF یا پرینت این مطلب