zoukankan      html  css  js  c++  java
  • AJAX

    封装简单的AJAX函数

    function AJAX(obj){
    //做网络请求的时候参数以对象的形式传递进来
    //我们规定obj里面包含属性:url,
    //请求方式type,
    //date前端给后端传递的参数
    //回调函数success
    //回调函数error
    //跨域的回调函数----callBack
    //后台接受回调函数的key值
    if (obj.callBack&&obj.key) {
    var sc=document.createElement("script");
    document.documentElement.appendChild(sc);
    sc.src=obj.url+"?"+obj.key+"=callBack";
    return;
    }
    var ajaxObj=null;
    if (window.XMLHttpRequest) {
    ajaxObj=new XMLHttpRequest();
    }else{
    ajaxObj=new ActiceXObject("Microsoft.XMLHTTP");
    }
    ajaxObj.onreadystatechange=function(){
    if (ajaxObj.readyState==4) {

    if (ajaxObj.status>=200 && ajaxObj.status<300|| ajaxObj.status == 304) {
    if (obj.success) {
    // obj.success(JSON.parse(ajaxObj.responseText));
    obj.success(ajaxObj.responseText);
    }

    }else{
    if (obj.error) {obj.error();}

    }
    }

    }
    // type转化为小写
    var type=obj.type||"get";
    type=type.toLowerCase();
    var params="";
    if (obj.data) {
    for(var key in obj.data){
    params+=key+"="+obj.data[key]+"&";
    }
    params.slice(0,params.length-1);
    }

    if (type=="get") {
    //判断是否传递了参数
    ajaxObj.open(type,obj.url+"?"+params,true);
    ajaxObj.send();
    }else{
    ajaxObj.open(type,obj.url,true);
    ajaxObj.setRequestHeader("Content=Type","application/x-www-form-urlencoded");
    ajaxObj.send(params);
    }

    }

    知识无止境,追其宗,而归一
  • 相关阅读:
    Traceroute侦测主机到目的主机之间所经路由情况的重要工具
    TCP/IP详解之IP协议
    Hello world
    [LeetCode] 198. 打家劫舍
    [LeetCode] 191. 位1的个数
    [LeetCode] 190. 颠倒二进制位
    python里的排序
    [LeetCode] 189. 旋转数组
    [LeetCode]187. 重复的DNA序列
    [LeetCode] 179. 最大数
  • 原文地址:https://www.cnblogs.com/bluesky1024/p/6221304.html
Copyright © 2011-2022 走看看