一个AJAX处理函数

这个函数处理的比较出色,放到JS里方便调用,bg_Ajax_gGetXmlHttpRequest这个返回浏览器的类型,而后一个函数主要是通过传递一些参数返回你需要的数据url是要提交到的网址PostData数据,至于CALLBACK是是否返回数据.

function  bg_Ajax_GetXMLHttpRequest() {
    
if  (window.XMLHttpRequest) {
        
return   new  XMLHttpRequest();
    } 
else  {
        
if  (window.Ajax_XMLHttpRequestProgID) {
            
return   new  ActiveXObject(window.Ajax_XMLHttpRequestProgID);
        } 
else  {
            
var  progIDs  =  [ " Msxml2.XMLHTTP.5.0 " " Msxml2.XMLHTTP.4.0 " " MSXML2.XMLHTTP.3.0 " " MSXML2.XMLHTTP " " Microsoft.XMLHTTP " ];
            
for  ( var  i  =   0 ; i  <  progIDs.length;  ++ i) {
                
var  progID  =  progIDs[i];
                
try  {
                    
var  x  =   new  ActiveXObject(progID);
                    window.Ajax_XMLHttpRequestProgID 
=  progID;
                    
return  x;
                } 
catch  (e) {
                }
            }
        }
    }
    
return   null ;
}
function  bg_Ajax_Callback(url, postData, callback)
{
    
var  x  =  bg_Ajax_GetXMLHttpRequest();
    
var  result  =   null ;
    
if  ( ! x) {
        result 
=  {  " value " : null " error " " NOXMLHTTP " };
        
if  (debugErrors) {
            alert(
" error:  "   +  result.error);
        }
        
if  (clientCallBack) {
            clientCallBack(result);
        }
        
return  result;
    }

    x.open(
" POST " , url, callback  ?   true  :  false );
    x.setRequestHeader(
" Content-Type " " application/x-www-form-urlencoded; charset=utf-8 " );
    
if  (callback) {
        x.onreadystatechange 
=   function () {
            
var  result  =   null ;
            
if  (x.readyState  !=   4 ) {
                
return ;
            }
            callback(x.responseText)
        }
    }
    x.send(postData);
}

本文转自
http://www.cnblogs.com/lucangel/archive/2006/07/19/454926.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值