=================================================================
TEST.ASP文件:
=================================================================
<script language="javascript" src="js/ajax.js"></script>
<script language="vbscript" src="js/convert.vbs"></script><div align="left" id="listtopad"></div>
<script language="javascript">
document.all.listtopad.innerHTML="<div style='border:1px solid #cccccc;width:200'> <img src='images/loading.gif' align='absmiddle'> 正在载入...</div>"
send_request("showad.asp",'listtopad')
</script>=================================================================
ajax.js文件
=================================================================
var http_request = false;  
function send_request(url,obj){//初始化、指定处理函数、发送请求的函数
var obj=obj;
http_request = false;   //开始初始化XMLHttpRequest对象 
if(window.XMLHttpRequest) { //Mozilla 浏览器 
http_request = new XMLHttpRequest();   
if (http_request.overrideMimeType) {//设置MiME类别  
http_request.overrideMimeType("text/html");//设定以gb2312编码识别数据     
}  
}else if (window.ActiveXObject) { // IE浏览器
try {  
http_request = new ActiveXObject("Msxml2.XMLHTTP");  
} catch (e){     
try {    
http_request = new ActiveXObject("Microsoft.XMLHTTP");    
} catch (e) {}  
}  
}  
if (!http_request) { // 异常,创建对象实例失败 
window.alert("不能创建XMLHttpRequest对象实例.");  
return false;   
}  
http_request.onreadystatechange =function(){
if (http_request.readyState == 4) { // 判断对象状态    
if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
gb2utf8_data =http_request.responseBody; 
execScript("gb2utf8_data = MidB(gb2utf8_data, 1)", "VBScript");  
var t=escape(gb2utf8_data).replace(/%u/g,"").replace(/(.{2})(.{2})/g,"%$2%$1").replace(/%([A-Z].)%(.{2})/g,"@$1$2");   
document.getElementById(obj).innerHTML=bytes2BSTR(http_request.responseBody); 
//alert(bytes2BSTR(http_request.responseBody));
} else{ //页面不正常               
document.getElementById("listtopad").innerHTML="发生错误!访问超时!"    
}    
}  
}
http_request.open("POST",url, true);  
http_request.send(null); 
}  // 处理返回信息的函数    
=================================================================
convert.vbs文件
=================================================================
Function bytes2BSTR(vIn) 
strReturn = "" 
For i = 1 To LenB(vIn) 
ThisCharCode = AscB(MidB(vIn,i,1)) 
If ThisCharCode < &H80 Then 
strReturn = strReturn & Chr(ThisCharCode) 
Else 
NextCharCode = AscB(MidB(vIn,i+1,1)) 
strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode)) 
i = i + 1 
End If 
Next 
bytes2BSTR = strReturn 
End Function =======================================================
showad.asp文件
=======================================================
<script language="javascript">
document.write("test");
</script>
<script language="javascript">
document.write("test2");
</script>====================================================================================
假设showad.asp中处理的是一个要运行时间较长的一个脚本如(5秒)。
我想通过AJAX技术。在后台异步执行这个脚本。而不影响页面内容的显示,在脚本运行时,上面显示一个动态的LOADING动画。
不知怎样实现才好!
请大家帮忙看看