前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JS示例12-ajax请求封装

JS示例12-ajax请求封装

作者头像
专注APP开发
发布2019-11-07 15:41:17
3.4K0
发布2019-11-07 15:41:17
举报
文章被收录于专栏:移动大前端移动大前端

一、知识要点

1、如何封装一个ajax请求 2、如何处理成功失败回调

二、源码参考

image.png

<!DOCTYPE HTML>
<html>

<head>
    <meta charset="utf-8">
    <title>封装ajax请求</title>
    <script src="new_ajax.js"></script>
    <script>
        window.onload = function () {
            var oBtn = document.getElementById('btn1');
            var div1 = document.getElementById('div1');

            oBtn.onclick = function () {
                ajax('a.txt', function (str) {
                    div1.innerHTML = str;
                });
            };
        };
    </script>
</head>

<body>
    <input id="btn1" type="button" value="读取" />
    <div id="div1"></div>
</body>

</html>
function ajax(url, fnSucc, fnFaild) {
    // 1.创建Ajax对象
    if (window.XMLHttpRequest) {
        var oAjax = new XMLHttpRequest(); // 兼容IE6以上浏览器
    } else {
        var oAjax = new ActiveXObject("Microsoft.XMLHTTP"); // 兼容IE6浏览器
    }

    // 2.连接服务器
    // open(方法, 文件名, 异步传输)
    oAjax.open('GET', url, true);

    // 3.发送请求
    oAjax.send();

    // 4.接收返回
    oAjax.onreadystatechange = function () {
        // oAjax.readyState // 浏览器和服务器,进行到哪一步了
        if (oAjax.readyState == 4) // 读取完成
        {
            if (oAjax.status == 200) // 成功
            {
                fnSucc(oAjax.responseText);
            } else {
                if (fnFaild) {
                    fnFaild(oAjax.status);
                }
            }
        }
    };
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、知识要点
  • 二、源码参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档