AJAX - 基本流程和特点

本文详细介绍了如何使用Ajax技术实现在不重新加载整个页面的情况下更新特定部分,通过具体示例代码展示了创建异步对象、设置请求方式和地址、发送请求及处理返回结果的过程。

 

 

  <script>
    window.onload = function(ev){
      var oBtn = document.querySelector('button');
      // querySelector  https://segmentfault.com/q/1010000014291684
      
      oBtn.onclick = function(ev1){

        // 1. 创建异步对象
        var xmlHttp = new XMLHttpRequest();

        /* 2. 设置请求方式和请求地址  open(method,url,async)
        method: 请求的类型  GET 或 POST
        url: 文件在服务器上的位置
        async: true(异步)  false(同步)
        */
        xmlHttp.open("GET", "04-ajax-get.php", true);

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

        // 4. 监听状态的变化
        xmlHttp.onreadystatechange = function(ev2){
          /*
          0: 请求未初始化
          1: 服务器连接已建立
          2: 请求已接收
          3: 请求处理中
          4:请求已完成,且相应已就绪
          */
          if(xmlHttp.readyState === 4){
            //判断是否请求成功
            if(xmlHttp.status >= 200 && xmlHttp.status < 300 || xmlHttp.status === 304){
              // 5. 处理返回的结果
              console.log('接收到服务器返回的数据');
            }else{
              console.log('没有接收到服务器返回的数据');
            }
          }
        }
      }
    }
  </script>
</head>
  <!-- 使用Ajax更新数据和 不使用Ajax的区别:
       不使用ajax更新数据,会重新加载整个页面
       (例如 淘宝 输入关键字,搜索)
       使用ajax更新数据, 不会重新加载整个页面,只更新某些部分 
       (例如 淘宝搜索栏- 输入关键字 自动更新下拉提示框的内容 )-->
<body>
  <button>发送请求</button>
</body>

 

转载于:https://www.cnblogs.com/carpenterzoe/p/10386854.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值