zoukankan      html  css  js  c++  java
  • 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);
    }

    }

    知识无止境,追其宗,而归一
  • 相关阅读:
    年年岁岁花相似,岁岁年年竟相同
    两情相悦,亦或情投意合
    FreeBSD学习笔记1
    MySQL学习笔记2
    门户网站镜像站以及CDN技术
    候车
    MySQL学习笔记1
    JDBC | 第一章: 快速开始使用JDBC连接Mysql数据库之简单CRUD
    JDBC | 第零章: 什么是JDBC?
    JDBC | 第二章: JDBC之批量更新,添加,和删除操作
  • 原文地址:https://www.cnblogs.com/bluesky1024/p/6296120.html
Copyright © 2011-2022 走看看