`
- 浏览:
256077 次
- 性别:
- 来自:
上海
-

var XmlHttpPool =
{
m_MaxPoolLength : 10,
m_XmlHttpPool : [],


__requestObject : function()
{
var xmlhttp = null;
var pool = this.m_XmlHttpPool;

for (var i = 0; i < pool.length; ++i)
{

if (pool[i].readyState == 4 || pool[i].readyState == 0)
{
xmlhttp = pool[i];
break;
}
}

if (xmlhttp == null)
{
return this.__extendPool();
}
return xmlhttp;
},


__extendPool : function()
{

if (this.m_XmlHttpPool.length < this.m_MaxPoolLength)
{
var xmlhttp = null;

try
{
xmlhttp = new ActiveXObject('MSXML2.XMLHTTP');

} catch(e)
{

try
{
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');

} catch(e2)
{
}
}

if (xmlhttp)
{
this.m_XmlHttpPool.push(xmlhttp);
}
return xmlhttp;
}
},

GetRemoteData : function(url, callback)
{
this.__receiveRemoteData(url, callback, 'GET', null);
},

GetRemoteDataXML : function(url, callback)
{
this.__receiveRemoteDataXML(url, callback, 'GET', null);
},

GetRemoteDataEx : function(url)
{
return this.__receiveRemoteDataEx(url, 'GET', null);
},

GetRemoteDataExXML : function(url, callback)
{
this.__receiveRemoteDataExXML(url, 'GET', null);
},

PostRemoteData : function(url, callback, data)
{
this.__receiveRemoteData(url, callback, 'POST', data);
},

PostRemoteDataXML : function(url, callback, data)
{
this.__receiveRemoteDataXML(url, callback, 'POST', data);
},

PostRemoteDataEx : function(url, data)
{
return this.__receiveRemoteDataEx(url, 'POST', data);
},

PostRemoteDataExXML : function(url, data)
{
return this.__receiveRemoteDataExXML(url, 'POST', data);
},

__receiveRemoteData : function(url, callback, httpmethod, data)
{
var xmlhttp = this.__requestObject();

if (!xmlhttp)
{
return null;
}
xmlhttp.open(httpmethod, url, true);

if (httpmethod == 'POST')
{
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
}

xmlhttp.onreadystatechange = function()
{

if (xmlhttp.readyState == 4 || xmlhttp.readyState == 'complete')
{
callback(xmlhttp.responseText);
}
};
xmlhttp.send(data);
},

__receiveRemoteDataEx : function(url, httpmethod, data)
{
var xmlhttp = this.__requestObject();

if (!xmlhttp)
{
return null;
}
xmlhttp.open(httpmethod, url, false);

if (httpmethod == 'POST')
{
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
}
xmlhttp.send(data);


if (xmlhttp.status == 200)
{
return xmlhttp.responseText;
}
return '';
},

__receiveRemoteDataXML : function(url, callback, httpmethod, data)
{
var xmlhttp = this.__requestObject();

if (!xmlhttp)
{
return null;
}
xmlhttp.open(httpmethod, url, true);

if (httpmethod == 'POST')
{
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
}

xmlhttp.onreadystatechange = function()
{

if (xmlhttp.readyState == 4 || xmlhttp.readyState == 'complete')
{
callback(xmlhttp.responseXML);
}
};
xmlhttp.send(data);
},

__receiveRemoteDataExXML : function(url, httpmethod, data)
{
var xmlhttp = this.__requestObject();

if (!xmlhttp)
{
return null;
}
xmlhttp.open(httpmethod, url, false);

if (httpmethod == 'POST')
{
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
}
xmlhttp.send(data);


if (xmlhttp.status == 200)
{
return xmlhttp.responseXML;
}
return '';
},


CancelAll : function()
{
var extendPool = this.__extendPool;

this.__extendPool = function()
{
return null;
}

for (var i = 0; i < this.m_XmlHttpPool.length; ++i)
{
this.m_XmlHttpPool[i].abort();
}
this.__extendPool = extendPool;
}
};
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...
内容涵盖VS 2005开发工具、SQL Server 2005安装管理策略与ASP.NET 2.0各种新功能,乃至于极度爆红的AJAX与Atlas Framework亦收录在本书之中,让您置身最顶尖的技术潮流。内容以专家级水平为基准点,透过精辟立论来...