如何写一个jQuery Ajax

首先看一看基本的jQuery Ajax的调用

$.ajax({
    method: 'POST',
    url: 'test.php',
    data: {
        name1: 'value1',
        name2: 'value2'
    },
    success: function (response) {
        console.log(response);
    }
});

嗯!大概就是这么个熊样

首先,我们这个$.ajax();的参数,没错这是一个对象
预定义用户收入的参数,然后解析每一个参数,并且返回所需要的数据

var ajax = function(param){
        param        = param || {};
        param.method = param.method.toUpperCase() || "POST";
        param.url    = param.url  || "";
        param.async  = param.async|| true;
        param.data   = param.data || null;
        param.success= param.success || function(){};
        var xhr = null;
        if(window.XMLHttpRequest)
        {
            xhr = new XMLHttpRequest();
        }
        else
        {
            // 出自微软官方,不适用自己调
            xhr = new ActiveXObject("MSXML2.XMLHTTP.3.0");
        }
        var params = [];
        for (var key in param.data)
        {
            params.push(key+'='+param.data[key]);
        }
        var postData = params.join('&');
        if(param.method.toUpperCase()==='POST')
        {
            xhr.open(param.method,param.url,param.async);
            xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded;charset=utf-8');
            xhr.send(postData);
        }
        else if(param.method.toUpperCase()==='GET')
        {
            xhr.open(param.method,param.url + '?' + postData, param.async);
            xhr.send(null);
        }
        xhr.onreadystatechange = function ()
        {
            if(xhr.readyState == 4 && xhr.status == 200)
            {
                param.success(xhr.responseText);
            }
        }
    }

调用

ajax({
    method: 'POST',
    url: 'test.php',
    data: {
        name1: 'value1',
        name2: 'value2'
    },
    success: function (data) {
        console.log(data);
    }
});

看!是不是一样色的

本文参考无数(不能说我厚颜),有啥疑问可以提出!大咖,大佬不要调侃

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 请记得在进行JQuery类库的运用时,加入JQuery类库,并且要保证先写文档就绪函数 $(document).r...
    Sunshinemm阅读 8,000评论 1 40
  • 通过jQuery,您可以选取(查询,query)HTML元素,并对它们执行“操作”(actions)。 jQuer...
    枇杷树8824阅读 3,899评论 0 3
  • 原文链接 http://blog.poetries.top/2016/10/20/review-jQuery 关注...
    前端进阶之旅阅读 16,851评论 18 503
  • jQuery是一套跨浏览器的JavaScript库,简化HTML与JavaScript之间的操作。由约翰·雷西格(...
    静候那一米阳光阅读 4,310评论 0 18
  • 第一章 入门 基本功能:访问和操作 dom 元素,控制页面样式,对页面的事件处理,与ajax完美结合,有丰富的插件...
    X_Arts阅读 4,707评论 0 2

友情链接更多精彩内容