function AAJAX(instanceName)
{
// *** private data members var _oXmlHttpRequester = null; var Header =
{
Date: "Date",
ContentType: "Content-Type",
ContentLength: "Content-Length",
AcceptRanges: "Accept-Ranges",
LastModified: "Last-Modified",
ContentMD5: "Content-MD5",
ETag: "ETag"
}; var Method =
{
Get: "GET",
Post: "POST",
Head: "HEAD",
Soap: "SOAP",
Put: "PUT",
Delete: "DELETE",
Options: "OPTIONS",
Trace: "TRACE",
Connect: "CONNECT"
}; var callbackMode =
{
Sync: false,
Async: true
}; var ReadyState =
{
Uninitialized: 0,
Loading: 1,
Loaded: 2,
Interactive: 3,
Complete: 4
}; var Status =
{
OK: 200,
Created: 201,
Accepted: 202,
NoContent: 204,
BadRequest: 400,
Unauthorized: 401,
Forbidden: 403,
NotFound: 404,
MethodNotAllowed: 405,
RequestTimeout: 408,
Gone: 410,
ServerError: 500
}; var Exception =
{
XmlHttpNotSupported: "XMLHTTPRequest is not supported by the browser."
} // *** public properties this.Method = Method.Get; // default
this.requestStatus = Status.OK; // default
// *** public methods this.getXmlHttpRequester = getXmlHttpRequester;
this.abortRequest = abortRequest;
this.makeRequest = makeRequest;
function getXmlHttpRequester()
{
_oXmlHttpRequester = null; if(window.ActiveXObject) // check IE first
{
_oXmlHttpRequester = new ActiveXObject("Msxml2.XMLHTTP"); // IE 6.0+
if(!_oXmlHttpRequester) {_oXmlHttpRequester = new ActiveXObject("Microsoft.XMLHTTP");} // IE 5.0, 5.5
}
if(window.XMLHttpRequest) // FF, NS, Safari etc.. next
{
_oXmlHttpRequester = new XMLHttpRequest();
makeXmlRequest();
} if(!_oXmlHttpRequester) // neither IE nor Mozilla worked out
{
alert(Exception.XmlHttpNotSupported);
}
} function abortRequest()
{
_oXmlHttpRequester.abort();
}
function makeRequest(url, callback) { if (!_oXmlHttpRequester) {
getXmlHttpRequester();
}
_oXmlHttpRequester.onreadystatechange = function()
{
if(_oXmlHttpRequester.readyState == ReadyState.Complete)
{
this.requestStatus = _oXmlHttpRequester.status; if(_oXmlHttpRequester.status == Status.OK)
{
callback(_oXmlHttpRequester.responseText);
} else {
alert('There was a problem with the request. Current status is : ' + _oXmlHttpRequester.status);
}
}
}
_oXmlHttpRequester.open(this.Method , url, true);
_oXmlHttpRequester.send(null);
}
function makeXmlRequest()
{
// Overriding the header sent by the server, just in case if it's not text/xml:
// Some old versions of Mozilla browsers work properly only if server
// response has the XML mime-type header. if(_oXmlHttpRequester.overrideMimeType) {_oXmlHttpRequester.overrideMimeType('text/xml');}
}
} // end of AAJAX() class
{
// *** private data members var _oXmlHttpRequester = null; var Header =
{
Date: "Date",
ContentType: "Content-Type",
ContentLength: "Content-Length",
AcceptRanges: "Accept-Ranges",
LastModified: "Last-Modified",
ContentMD5: "Content-MD5",
ETag: "ETag"
}; var Method =
{
Get: "GET",
Post: "POST",
Head: "HEAD",
Soap: "SOAP",
Put: "PUT",
Delete: "DELETE",
Options: "OPTIONS",
Trace: "TRACE",
Connect: "CONNECT"
}; var callbackMode =
{
Sync: false,
Async: true
}; var ReadyState =
{
Uninitialized: 0,
Loading: 1,
Loaded: 2,
Interactive: 3,
Complete: 4
}; var Status =
{
OK: 200,
Created: 201,
Accepted: 202,
NoContent: 204,
BadRequest: 400,
Unauthorized: 401,
Forbidden: 403,
NotFound: 404,
MethodNotAllowed: 405,
RequestTimeout: 408,
Gone: 410,
ServerError: 500
}; var Exception =
{
XmlHttpNotSupported: "XMLHTTPRequest is not supported by the browser."
} // *** public properties this.Method = Method.Get; // default
this.requestStatus = Status.OK; // default
// *** public methods this.getXmlHttpRequester = getXmlHttpRequester;
this.abortRequest = abortRequest;
this.makeRequest = makeRequest;
function getXmlHttpRequester()
{
_oXmlHttpRequester = null; if(window.ActiveXObject) // check IE first
{
_oXmlHttpRequester = new ActiveXObject("Msxml2.XMLHTTP"); // IE 6.0+
if(!_oXmlHttpRequester) {_oXmlHttpRequester = new ActiveXObject("Microsoft.XMLHTTP");} // IE 5.0, 5.5
}
if(window.XMLHttpRequest) // FF, NS, Safari etc.. next
{
_oXmlHttpRequester = new XMLHttpRequest();
makeXmlRequest();
} if(!_oXmlHttpRequester) // neither IE nor Mozilla worked out
{
alert(Exception.XmlHttpNotSupported);
}
} function abortRequest()
{
_oXmlHttpRequester.abort();
}
function makeRequest(url, callback) { if (!_oXmlHttpRequester) {
getXmlHttpRequester();
}
_oXmlHttpRequester.onreadystatechange = function()
{
if(_oXmlHttpRequester.readyState == ReadyState.Complete)
{
this.requestStatus = _oXmlHttpRequester.status; if(_oXmlHttpRequester.status == Status.OK)
{
callback(_oXmlHttpRequester.responseText);
} else {
alert('There was a problem with the request. Current status is : ' + _oXmlHttpRequester.status);
}
}
}
_oXmlHttpRequester.open(this.Method , url, true);
_oXmlHttpRequester.send(null);
}
function makeXmlRequest()
{
// Overriding the header sent by the server, just in case if it's not text/xml:
// Some old versions of Mozilla browsers work properly only if server
// response has the XML mime-type header. if(_oXmlHttpRequester.overrideMimeType) {_oXmlHttpRequester.overrideMimeType('text/xml');}
}
} // end of AAJAX() class
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货