AJAX(Web数据交互方式)

使用 Ajax 技术网页应用能够快速地将增量更新呈现在用户界面上,而不需要重载(刷新)整个页面,这使得程序能够更快地回应用户的操作。

AJAX

一. 什么是 AJAX?

AJAX 全称:Asynchronous Javascript And XML(异步的 JavaScript 与 XML)
网页的局部刷新技术,网页不需要刷新整个页面来更新部分网页数据

二. 原始的 JS 创建 AJAX 步骤(☆)

  1. 创建 AJAX 的核心对象,XMLHttpRequest 根据不同的浏览器来创建相对应的Ajax对象
var req;
if(window.XMLHttpRequest){
    // 非IE
    req = new XMLHttpRequest();
}else {
    // IE
    req = new ActiveXObject("Microsoft.XMLHTTP");
}
  1. 与服务器进行连接
// 第一个参数:提交方式 get 或 post
// 第二个参数:访问后台的 URL
// 第三个参数:是否异步,true 表示异步,false 表示同步
req.open("post", url, true);
  1. 发送请求
req.send();

// get方式:index?id=1
req.send(null);

// post方式: 设置编码方式
req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
var data = "id=" + 1;
req.send(data);
  1. 指定回调函数,接收后台返回值(绑定回调函数 / 状态监听函数)
req.onreadystatechange = function() {
    // AJAX 状态是否等于4,状态为4表示完成了整个请求
    if(req.readyState == 4) {
        // HTTP 状态等于200
        if(req.status == 200) {
            // 处理返回值
            var info = req.responseText;
        }
    }
}

三. readyState 属性值(AJAX 的状态)

状态值 描述 0 表示”未初始化状态”,已经创建好 XMLHttpRequest 对象,但没有初始化 1 表示”载入状态”,XMLHttpRequest 调用了 open 函数,但没有发送请求 2 表示”发送状态”,XMLHttpRequest 调用了 send 函数,发送请求 3 表示”接收状态”,Servlet 已经接收到 HTTP 请求,但没有执行完毕 4 表示”已加载状态”,完全被接收,并且处理完成,前端 AJAX 可以接收返回值

Original: https://www.cnblogs.com/xiqingbo/p/front-end-11.html
Author: Schieber
Title: AJAX(Web数据交互方式)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/598684/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Redis——数据操作

    2022-09-20 Redis——select Redis数据库中的数据库的个数为: 16个,使用0号数据库开始的,到第15个数据库结束。 在ubantu中,进入Redis客户端…

    数据库 2023年6月14日
    068
  • 使用MySQL Shell创建MGR

    本篇知识点: 配置MGR所需的参数 使用MySQL Shell配置MGR shell.connect() var 设定临时变量 dba.createCluster() dba.ge…

    数据库 2023年6月16日
    0115
  • SMBMS(超市订单管理系统)项目从零开始搭建

    如果需要完整的系统可以加我qq:1842329236 一、搭建一个maven web项目 新建一个maven,并且使用模板 maven的详细创建,及配置请看这篇文章https://…

    数据库 2023年6月16日
    079
  • 译文 | MySQL 8.0 密码管理策略(一)

    MySQL 8.0 在密码管理方面有很多改善,本文将介绍以下两个特性。 密码重用策略 生成随机密码 简单地说,当您设置新密码时,您可以限制使用以前使用的密码。有两种策略: [En]…

    数据库 2023年5月24日
    080
  • day04-1群聊功能

    多用户即时通讯系统04 4.编码实现03 4.5功能实现-群聊功能实现 4.5.1思路分析 群聊的实现思路和私聊的实现非常类似。 不同的是:私聊时,服务端接收到消息后,只需要找出接…

    数据库 2023年6月11日
    083
  • MySQL特性:MRR,Multi-Range Read,多范围读

    孔个个MRR在5.6版本开始支持,相关文章不少。但是读起来层次感差了一些,在这里我用自己的理解重新整理了一版。这里参考了很多在网络上能找到的资料,才使我更全面的理解MRR,但时间有…

    数据库 2023年6月16日
    054
  • Spring(四)-声明式事务

    Spring-04 声明式事务 1、事务的定义 事务就是由 一组逻辑上紧密关联的 多个工作单元(数据库操作)而合并成一个整体,这些操作 要么都执行,要么都不执行。 2、事务的特性:…

    数据库 2023年6月16日
    0115
  • 自定义表单 动态表单 表单设计器 流程引擎 设计方案

    作流模块——————————- 1.模型管理 :web在线流…

    数据库 2023年6月6日
    078
  • 第八章:变量、常量和基础类型

    本篇翻译自《Practical Go Lessons》 Chapter 8: Variables, constants and basic types 1 你将在本章中学到什么? …

    数据库 2023年6月6日
    0121
  • jmeter的一些概念知识

    前言 一、Jmeter的作用 – 1.jmeter进行接口操作 2. jmeter进行性能操作 二、Jmeter的一些概念的理解 – 1.事务 2. TPS…

    数据库 2023年6月6日
    0102
  • 第十四章 静态代理设计模式

    1.为什么需要代理设计模式 1.1 问题 在javaEE分层开发中,那个层对我们最重要? DAO–>Service–>Controller 在javaEE分层开发中…

    数据库 2023年6月14日
    078
  • cron 表达式

    cron 表达式 1.简介:一个cron表达式最少有5个空格来分割时间元素,总共有7个元素,分别如下: ① 秒(0-59) ② 分钟(0-59) ③ 小时(0-23) ④ 天(月的…

    数据库 2023年6月16日
    097
  • 实验:非GTID 一主多从变级联架构

    个个原创文章 欢迎讨论https://www.cnblogs.com/konggg/欢迎转载收藏,转载请注明来源,谢谢支持! Original: https://www.cnblo…

    数据库 2023年6月16日
    0120
  • IDEA插件和个性化配置推荐

    插件推荐 我自己现在使用的一些插件和一些自己感觉比较舒服配置分析给大家 idea如何安装插件: 如果打开设置没有看到,直接搜索plugins 然后在这里搜索即可 CodeGlanc…

    数据库 2023年6月16日
    093
  • MySQL 中的锁机制

    技术是为了解决问题而生的,锁被用来实现隔离性,保证并发事务的正确性。 两段锁 数据库遵循的是两段锁协议,将事务分成两个阶段,加锁阶段和解锁阶段(所以叫两段锁) 加锁阶段:在加锁阶段…

    数据库 2023年6月11日
    099
  • 单点登录(SSO)

    1 基础知识 单点登录机制(SSO)允许用户登录应用程序一次,并访问所有相关的系统,而不需要单独登录它们。 由于 SSO,用户只需登录一次即可使用服务,并自动登录到所有相关应用程序…

    数据库 2023年6月14日
    0159
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球