zoukankan      html  css  js  c++  java
  • js 原生 ajax

    //js  ajax
    function Ajax(url,type,data,comFun,sucFun,errFun)
    {
        //1、创建XMLHttpRequest对象
        var xmlHttpRequest;
        
       if(window.ActiveXObject) //IE低版本
       {
            xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
       }
       else if (window.XMLHttpRequest)//Firefox等
       {
           xmlHttpRequest = new XMLHttpRequest();
       }
      
        //2、创建连接
        xmlHttpRequest.open(type, url, true);  
        
        //处理post请求参数
        var params = null;
        if(type.toLowerCase()=="post")
        {
            //post方式要设置请求类型
            xmlHttpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
            
            if(typeof data=="string")
            {
                params = data;
            } 
            else
            {
                var arr = [];
                for(var k in data)
                {
                    arr.push(k+"="+data[k]);
                }
                params = arr.join("&");
            }
        }
        else
        {
           //如果是get请求 send方法中的参数为null
           params = null; 
        }
        
        //3、发送请求
        xmlHttpRequest.send(params);  
      
        //4、接受服务器响应结果
        xmlHttpRequest.onreadystatechange = function()
        {
            // readyState值说明  
            // 0,初始化,XHR对象已经创建,还未执行open  
            // 1,载入,已经调用open方法,但是还没发送请求  
            // 2,载入完成,请求已经发送完成  
            // 3,交互,可以接收到部分数据  
           
            if (xmlHttpRequest.readyState == 4) {  
                //complete: 请求完成时执行的函数
                //complete();
                comFun("请求完成......");
                
                // status值说明  
                // 200:成功  
                // 404:没有发现文件、查询或URl  
                // 500:服务器产生内部错误  
                
                if(xmlHttpRequest.status == 200)
                {
                    //success: 请求成功时执行的函数
                    //success();
                    var text = xmlHttpRequest.responseText;  
                    sucFun(text);
                }
                else
                {
                    //error: 请求失败时执行的函数
                    //error();
                    errFun("服务器错误......");
                }
            }
          
        }
    }
  • 相关阅读:
    线段树套线段树
    hdu6800
    半平面交 poj1279
    Unity:创建了一个自定义的找子物体的脚本
    Unity:一个简单的开门动画
    hdu 4940
    hdu 4939
    hdu 4932
    hdu 4912
    AC自动机
  • 原文地址:https://www.cnblogs.com/zoro-zero/p/4331914.html
Copyright © 2011-2022 走看看