BABNIK
Новичок
AJAX:Почему-то один и тот же ответ получаю
есть такой код:
var ServerResponse;
var XMLObject;
this.Create = function () {
try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
try { return new XMLHttpRequest(); } catch(e) {}
alert("XMLHttpRequest not supported");
return null;
}
XMLObject = this.Create();
XMLObject.onreadystatechange = function() {
if (XMLObject.readystate != 4) return;
else {
ServerResponse = XMLObject.responsetext;
};
}
this.OpenPOST = function (Url, Query) {
alert(Url);
alert(Query);
XMLObject.open("POST", Url, true);
XMLObject.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
XMLObject.send(Query);
}
this.OpenGET = function (Url,Query) {
XMLObject.open("GET", Url+'?'+Query, true);
XMLObject.send(null);
}
this.Send = function (Query) {
switch (Method) {
case 'POST' : this.OpenPOST(Url,Query);
break;
case 'GET' : this.OpenGET(Url,Query);
break;
}
alert('sr'+ServerResponse);
// return ServerResponse;
}
}
var j = new CallServer("GET", "aaa.php");
j.Send('p=1');
j.Send('p=2');
файлик aaa.php выглядит так:
echo $_GET['p'];
собственно вопрос:
ответ должен быть sr1, sr2 а даёт sr1, sr1.
выяснил почему: приведённое ниже хозяйстов срабаотывает тока один раз. сосбственно фопроос в том посчему тока 1 ра работает?
XMLObject.onreadystatechange = function() {
if (XMLObject.readystate != 4) return;
else {
ServerResponse = XMLObject.responsetext;
};
}
есть такой код:
var ServerResponse;
var XMLObject;
this.Create = function () {
try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
try { return new XMLHttpRequest(); } catch(e) {}
alert("XMLHttpRequest not supported");
return null;
}
XMLObject = this.Create();
XMLObject.onreadystatechange = function() {
if (XMLObject.readystate != 4) return;
else {
ServerResponse = XMLObject.responsetext;
};
}
this.OpenPOST = function (Url, Query) {
alert(Url);
alert(Query);
XMLObject.open("POST", Url, true);
XMLObject.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
XMLObject.send(Query);
}
this.OpenGET = function (Url,Query) {
XMLObject.open("GET", Url+'?'+Query, true);
XMLObject.send(null);
}
this.Send = function (Query) {
switch (Method) {
case 'POST' : this.OpenPOST(Url,Query);
break;
case 'GET' : this.OpenGET(Url,Query);
break;
}
alert('sr'+ServerResponse);
// return ServerResponse;
}
}
var j = new CallServer("GET", "aaa.php");
j.Send('p=1');
j.Send('p=2');
файлик aaa.php выглядит так:
echo $_GET['p'];
собственно вопрос:
ответ должен быть sr1, sr2 а даёт sr1, sr1.
выяснил почему: приведённое ниже хозяйстов срабаотывает тока один раз. сосбственно фопроос в том посчему тока 1 ра работает?
XMLObject.onreadystatechange = function() {
if (XMLObject.readystate != 4) return;
else {
ServerResponse = XMLObject.responsetext;
};
}