[js]轻便的XMLHttpRequest应用函数:downloadUrl()

走进景山公园,抬头望去,高大的万春亭红柱黄瓦,在茂密的翠林映衬下,像一幅美丽的图画。
前段时间在用googlemapapi的函数库的时候,发现里面的downloadUrl函数非常好用,所以自己写了一个。用腻了那些什么框架什么池,到头来发现越简单的东西越是适合我这种懒人。 downloadUrl(url,callback,data); 参数说明:
url不用说了;
callback是回调函数,函数调用的时候会有两个参数:data,responseCode,data就是responseText,responseCode就是status;
data是要post的数据,get方式时此参数可省略。 用法一:直接把回调函输写在参数中
downloadUrl('http://www.ugia.cn/wp-data/test.htm',function(data,responseCode){
alert(data);//这里处理返回的数据
}); 用法二:先定义回调函数,然后传入
functiontest(data,responseCode){
alert(data);//这里处理返回的数据
} downloadUrl('http://www.ugia.cn/wp-data/test.htm',test); 源代码:

/**
*downloadurllite
*
*@author:legend(legendsky@hotmail.com)
*@link:http://www.ugia.cn/?p=122
*@version:1.0
*
*@paramstringurl
*@paramstringcallback回调函数
*@paramstringdatapost数据
*
*@returnvoid
*/
functiondownloadUrl(url,callback,data)
{
//init
url+=url.indexOf("?")>0?"&":"?";
url+="random_download_url="+Math.random(); if(typeofdata=='undefined')
{
vardata=null;
} method=data?'POST':'GET'; //createXMLHttpRequestobject
if(window.XMLHttpRequest)
{
varobjXMLHttpRequest=newXMLHttpRequest();
}
else
{
varMSXML=['MSXML2.XMLHTTP.5.0','MSXML2.XMLHTTP.4.0','MSXML2.XMLHTTP.3.0','MSXML2.XMLHTTP','Microsoft.XMLHTTP'];
for(varn=0;n<MSXML.length;n++)
{
try
{
varobjXMLHttpRequest=newActiveXObject(MSXML[n]);
break;
}
catch(e)
{
}
}
} //sendrequest
with(objXMLHttpRequest)
{
//setTimeouts(30*1000,30*1000,30*1000,30*60*1000);
try
{
open(method,url,true); if(method=='POST')
{
setRequestHeader('Content-Type','application/x-www-form-urlencoded;charset=UTF-8');
} send(data);
}
catch(e)
{
alert(e);
} //onready
onreadystatechange=function()
{
if(objXMLHttpRequest.readyState==4)
{
callback(objXMLHttpRequest.responseText,objXMLHttpRequest.status);
delete(objXMLHttpRequest);
}
}
}
}

以上就是[js]轻便的XMLHttpRequest应用函数:downloadUrl()。有些人仅仅只是我们生命中一个过客,来无痕去无迹;有些人有缘相守一辈子,却在心里激不起一丝波澜,寡淡无味;有些人仅仅就看了一眼,却在心底从此生根,甚至牵念一生。更多关于[js]轻便的XMLHttpRequest应用函数:downloadUrl()请关注haodaima.com其它相关文章!

标签: js XMLHttpRequest