AJAX 是什么

AJAX ( Asynchronous JavaScript and XML,异步 JavaScript 和 XML,中文读音:”阿贾克斯 ”) 是一种 Web 交互的新方式。

AJAX 实际上是几项技术按一定的方式组合在一起共同的协作中发挥各自的作用,包含了 JavaScript、XML、CSS、XSTL、DOM、HTML/XHTML 和 XHR 七种技术,所以 AJAX 就像是粘合剂把七种技术整合到一起,从而发挥各个技术的优势。

AJAX 的四大特点

  • 无需跳转页面即可改变页面内容

这是 AJAX 最大的特点,可以大大减少用户等待时间

  • 按需获取数据

每次 AJAX 请求只从服务器端获取需要的数据

  • 改善表单验证方式

不再需要打开新页面,也不再需要将整个页面数据提交

  • 异步与服务器进行交互

可以向服务器并行发送多个请求

AJAX 与传统 Web 的区别



  • AJAX 请求/响应不跳转页面,传统 Web 要跳转页面

  • AJAX 支持异步请求(并行),传统 Web 只能同步(串行)请求

  • AJAX 按需获取页面数据,传统 Web 获取整个页面

AJAX 开发五个步骤

<script>
//第一步:创建 XHR 对象
var xhr = new XMLHttpRequest(); //第二步:设置回调方法
xhr.onreadystatechange = callback; //第三步:建立与服务器的连接
xhr.open('GET',"/MySpringMVCApp_war_exploded/ajax",true); //第四步:向服务器发送AJAX请求
xhr.send(); //第五步:定义回调方法,接收 AJAX 请求返回的数据
function callback() {
if (xhr.readyState == 4 && xhr.status == 200) {
var data = xhr.responseText; //获取返回的数据
}
}
</script>

JQuery AJAX

以上 JavaScript 原生语言开发 AJAX 太过繁琐,开发效率太低,而且还需要处理不同浏览器的兼容性问题。为此,JQuery 提供了 AJAX 的良好封装,大大简化直接使用 JavaScript 开发 AJAX 的困难,而且也不用考虑开发 AJAX 的浏览器的兼容性问题。

JQuery AJAX 封装六个方法对应六种方式使用 AJAX,如下:

  • ajax 方法:JQuery 低层封装方法,使用相对复杂,但功能强大,灵活性高

  • get 方法:支持 ajax 发送 get 请求

  • post 方法:支持 ajax 发送 post 请求

  • getJSON 方法:支持 ajax 发送 get 请求(返回数据为 JSON 格式)

  • load 方法:动态加载文件或代码并插入到 dom 中

  • getScript 方法:动态加载 js 文件并执行

getJSON 方法的使用
$.getJSON (
"ajax",
{
username:“参数1”,
content:“参数2”
},
function ( data ) {
//接受ajax返回的数据
}
);

以上是使用 getJSON 方法发送 ajax 请求代码,其中有三个参数,如下:

  • 参数1:表示发送 ajax 请求的服务器 url 地址

  • 参数2:表示发送 ajax 请求携带的参数数据

  • 参数3:表示匿名方法,用于接收 ajax 响应的数据

除 ajax 方法外,其他方法的使用与 getJSON 是完全相同的。

ajax 方法
$.ajax({
   
url: “http://www.hzhuti.com”,   // 请求的 url 地址
   
dataType: “json”,   // 返回格式为 json
   
async: true, // 请求是否异步(默认为异步)
   
data: { “id”: “value” },    // 请求携带的参数值
   
type: “GET”,   // 请求方式
   
success: function(data) {
        //处理接收的 ajax 数据
   
},
});

AJAX 原理与使用的更多相关文章

  1. AJAX原理总结

    AJAX全称 Asynchronous JavaScript and XML(异步的JavaScript 和XML) 同步和异步 异步传输是面向字符的传输,单位是字符 同步传输是面向比特,单位是帧,传 ...

  2. 什么是ajax,ajax原理是什么 ,优缺点是什么

    AJAX工作原理及其优缺点   1.什么是AJAX?AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页 ...

  3. ajax原理图解

    Ajax 原理图解 摘自: http://www.nowamagic.net/ajax/ajax_PicForAjaxPrinciple.php Ajax其实已经使用很久了,但一直也没有时间正经的找本 ...

  4. 浅析ajax原理与用法

    1 ajax原理 Ajax(Asynchronous JavaScript and XML (异步的JavaScript和XML)),是一种快速创建 动态网页的技术,目的是显示动态局部刷新.通过XML ...

  5. Ajax原理一篇就够了

    Ajax原理一篇就够了 一.什么是Ajax Ajax(Asynchronous JavaScript and XML的缩写)是一种异步请求数据的web开发技术,对于改善用户的体验和页面性能很有帮助.简 ...

  6. 封装ajax原理

    封装ajax原理 首先处理 用户如果不传某些参数,设置默认值 type默认get 默认url为当前页 默认async方式请求 data数据默认为{} 处理用户传进来的参数对象 遍历,拼接成key=va ...

  7. 简述Ajax原理及实现步骤

    简述Ajax原理及实现步骤 1.Ajax简介 概念 Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML). 现在允许浏览器与务器通信 ...

  8. 大话AJAX原理

    大话AJAX原理 一.什么是Ajax Ajax(Asynchronous JavaScript and XML的缩写)是一种异步请求数据的web开发技术,对于改善用户的体验和页面性能很有帮助.简单地说 ...

  9. Ajax -- 原理及简单示例

    1. 什么是Ajax •Ajax被认为是(AsynchronousJavaScript and XML的缩写).现在,允许浏览器与服务器通信而无须刷新当前页面的技术都被叫做Ajax. 2. Ajax ...

  10. Ajax原理-重点

    Ajax原理 AJAX即“Asynchronous Javascript And XML”,是指一种创建交互式网页应用的网页开发技术.AJAX 是一种用于创建快速动态网页的技术.它可以令开发者只向服务 ...

随机推荐

  1. Spring(四)Spring JdbcTemplate&声明式事务

    JdbcTemplate基本使用 01-JdbcTemplate基本使用-概述(了解) JdbcTemplate是spring框架中提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装.spr ...

  2. .NET管道应用——工作池

    名词解释 工作池:一组等待任务分配的线程.一旦完成了所分配的任务,这些线程可继续等待任务的分配. .NET管道:命名空间System.Threading.Channels中的Channel和Chann ...

  3. Day17_99_IO_FileReader文件字符输入流

    FileReader文件字符输入流 * 继承结构 Java.lang.Object - java.io.Reader; 抽象类 java.io.InputStreamReader; <转换流: ...

  4. Day13_66_sleep()方法 (二)

    sleep()方法 (二) * 因为sleep()是静态方法,所以用 线程对象名.sleep() 和 Thread.sleep()是一样的意思,用线程对象名调用并不等于让线程对象名所指向的线程阻塞,而 ...

  5. RandomForestClassifier参数

    [RandomForestClassifier] 参数 n_estimators : 随机森林中树的个数,即学习器的个数. max_features : 划分叶子节点,选择的最大特征数目 n_feat ...

  6. 1.1.08- Python变量的关联,绑定,引用

    Python中关联.绑定,引用的含义: 在Python中,变量没有类型 关联/绑定/引用都是指变量和一个对象的关联关系. 在交互模式下查看变量的绑定关系: >>>help(" ...

  7. Laravel 定时任务 任务调度 可手动执行

    1.创建一个命令 php artisan make:command TestCommand 执行成功后会提示: Console command created successfully. 生成了一个新 ...

  8. hdu3594 强连通 tarjan

    题意: 判断是不是强连通图 ,同时每一条边必须只能在一个环里 思路:之前我的强连通用的全是双深搜,结果题目的第二个要求很难判断,一开始写了三个深搜加上并查集,结果越写越乱,其实就是在判断一个边是否只在 ...

  9. 从苏宁电器到卡巴斯基第10篇:我在苏宁电器当营业员 II

    之所以是主推,其实是有原因的 据我所知,尽管诺基亚卖的很好,但是他们的厂促的待遇却很一般,估计也就一千多两千的样子,撑死两千多.但是呢,记得当时我们的卖场里面还有联想手机,别看卖得相当次,但是他们的厂 ...

  10. hdu2158 最短区间版大家来找碴

    题意:                  最短区间版大家来找碴 Problem Description 给定一个序列,有N个整数,数值范围为[0,N).有M个询问,每次询问给定Q个整数,可能出现重复值 ...