PDA

View Full Version : این قظعه کد آجاکس رو لطفا توضیح دهید



ehsan2007
سه شنبه 11 دی 1386, 18:40 عصر
سلام به دوستان برنامه نویس عزیز لطفا این قطعه کد رو به صورت کامل توضیح بدید

function rNo(){
randscript = parseInt(Math.random()*(9999999999999))
return randscript
}

var request = false;
try {
request = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
request = false;
}
}
}

if (!request)
alert("Error initializing XMLHttpRequest!");

function page(name) {
var url = name + "?" + rNo();
request.open("GET", url, true);
request.onreadystatechange = updatePage;
request.send(null);
}

function updatePage() {
if (request.readyState == 4) {
if (request.status == 200) {
var response = request.responseText.split("|");
document.getElementById("divID").innerHTML = response[0];
} else
alert(request.status);
}
}

scorpion_man
سه شنبه 11 دی 1386, 19:09 عصر
با سلام به همه دوستان
function rno یک activex بنام msxml2 رو که فقط برای explorer هست و امکانات ارتباط async رو با سرور مهیا میسازه نمونه سازی میکنه
function page آدرس صفحه ای که درخواست باید ارسال شود را با متد get ایجاد کرده و querystring های لازم اضافه شده و به سرور ارسال میشود و یک handle برای دریافت اطلاعات با نام updatepage ایجاد میشود
در داخل handle updatepage ابتدا پارامترهای بازگشتی چک شده تا در صورت خطا یا پیدا نشدن page اطلاعات بازآوری نشود سپس قسمتی از صفحه که باید به روز شود از شیء document پیدا شده و اطلاعات بازگشتی جایگزین اطلاعات قبلی میشود
البته کد خطاها رو میتونید جستجو کنید و شماره هاشو پیدا کنید تا پیغام خطای مناسب را به کاربر نشون بدید
موفق باشید