• 兼容的Ajax


     1 /**
     2  * 创建XMLHttpRequest对象
     3  * @param _method 请求方式: post||get
     4  * @param _url 远程服务器地址
     5  * @param _async 是否异步
     6  * @param _parameter 向服务器发送数据
     7  * @param _callBack 回调函数
     8  */
     9 function parameterDeal(_parameter){
    10     var _sender="";
    11     if(_parameter instanceof Object){
    12         for(var k in _parameter){
    13             _sender+=k+"="+_parameter[k]+"&";
    14         }
    15         return _sender.replace(/&$/g,"");
    16     }else{
    17         return _parameter;
    18     }
    19 }
    20 function createXMLHttpRequest(){
    21     try{
    22         return new window.XMLHttpRequest();
    23     }catch(e){
    24         try{
    25             return new ActiveXObject("MSXML2.XMLHTTP.6.0");
    26         }catch(e){
    27             try{
    28                 return new ActiveXObject("MSXML2.XMLHTTP.3.0");
    29             }catch(e){
    30                 try{
    31                     return new ActiveXObject("MSXML2.XMLHTTP");
    32                 }catch(e){
    33                     try{
    34                         return new ActiveXObject("Microsoft.XMLHTTP");
    35                     }catch(e){
    36                         throw new Error("该浏览器版本太低,已经被大部分市场淘汰,请升级!!!");
    37                         return;
    38                     }
    39                 }
    40             }
    41         }
    42     }
    43 }
    44 
    45 import Host from  './Host.js';//域名的全局变量
    46 
    47 var Ajax=function(_method,_url,_async,_parameter,_callBack){
    48     _url=Host+_url;
    49     var _ajax=createXMLHttpRequest();
    50     if(_ajax){
    51         _ajax.open(_method,_url,_async);
    52         _ajax.onreadystatechange=function(){
    53             if(_ajax.readyState==4 && _ajax.status==200){
    54                 _callBack(_ajax.responseText);
    55             }
    56         }
    57         _ajax.setRequestHeader("content-type","application/x-www-form-urlencoded;charset=utf-8");
    58         try {
    59             _ajax.send(parameterDeal(_parameter));
    60         } catch (e) {
    61             console.log(e);
    62         } finally {
    63 
    64         }
    65     }
    66 }
    67 
    68 export default Ajax;

    如果觉得文章不错,可以给小编发个红包给予鼓励.

  • 相关阅读:
    《代码大全2》读书笔记(三)
    软工第一次作业 进度记录三 简单的性能分析
    软工第一次作业 进度记录2
    WordPress发布文章前强制要求上传特色图像
    自定义php(NON-CORE WORDPRESS FILE) 引用 wordpress
    php 利用header 函数 下载各种文件
    apache php配置 虚拟目录 和 虚拟主机 多域名配置 原理解析
    JS 动态加载脚本 执行回调
    php 文件上传
    wordpress 插件 汉化
  • 原文地址:https://www.cnblogs.com/yiyi17/p/7521650.html
Copyright © 2020-2023  润新知