Ajax并不是新的技术,而是之前技术的整合,其中包括JavaScript、HTML、CSS、DOM、XMLHttpRequest、XML和JSON是构成Ajax技术体系技术基石。

JavaScript:JavaScript是一种弱类型、解释性的、通用的脚本语言,在Ajax技术体系中,它将各个部分粘合在一起。JavaScript定义业务逻辑、操作DOM改变和刷新用户界面、重绘或重组织用户数据、处理用户交互等。

HTML:HTML定义了文档的结构,定义了元素之间的包含关系,也定义了文档中可以应用样式的位置。

CSS:CSS为Web页面元素提供了一种可重用的、可视化样式的定义方法来定义应用的外观。样式表提供了集中定义各种视觉央视的方法并方便地设置到页面元素上。样式表可定义样式元素、定义元素相互之间的布局以及简单的用户交互功能以实现视觉效果。

DOM:DOM组织网页视图,以一组可以使用JavaScript操作的可编程对象展现出Web页面的结构。通过使用脚本修改DOM在运行时改变用户界面,或重绘页面的某个部分。Web页面的DOM是树状结构,JavaScript引擎通过全局变量document公开当前Web页面的根节点,这个变量是所有DOM操作的起点。DOM文档与HTML表单的关系是双向的,修改DOM将会改变HTML标记。

XMLHttpRequest:使用XMLHttpRequest以异步的方式与服务器通信。它以后台方式获取数据,是的发生异步调用的业务更加流畅。数据格式通常是XML(目前来看,使用JSON作为数据格式会更加方便,在本书后面的章节会详细介绍JSON,但是目前为大家介绍的是AJAX)。

XML和JSON:XML,可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。通过此种标记,计算机之间可以处理各种信息。他可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言,它非常适合万维网传输,提供统一的方法来描述和交换独立与应用程序或供应商的结构化数据。

但是XML文件相对庞大,格式复杂,传输占用大量的带宽,而且服务器端和客户端都需要花费大量代码来解析XML,使两端的代码变得复杂并不容易维护,并且不同的浏览器解析XML文件的方式也不尽相同,需要重复编写很多代码。而且服务器端和客户端解析XML也需要花费大量的资源和时间。

那么除了使用XML作为数据交换格式,现在还可以使用一种叫做JSON(JavaScript Object Notation)的轻量级数据交换格式,并且JSON已经成为了主流(现在AJAX似乎更适合叫做AJAJ,Asynchronous JavaScript And JSON)。

JSON数据格式比较简单,易于读写,格式都是压缩的,占用带宽较小。JSON格式能够直接为服务端和客户端代码使用,大大简化了服务端和客户端的代码开发量,且易于维护。

IT兄弟连 JavaWeb教程 AJAX的技术构成的更多相关文章

  1. IT兄弟连 JavaWeb教程 AJAX定义以及解决的问题

    Ajax是"Asynchronous JavaScript And XML"的缩写(即:异步的JavaScript和XML),是一种实现无页面刷新获取服务器数据的混合技术,Ajax ...

  2. IT兄弟连 JavaWeb教程 AJAX以及JSON字符串经典案例

    案例需求:客户端发送AJAX请求服务器端获取用户信息的数据. 案例实现: 在服务器端要将Java对象转换成JSON字符串,如果使用拼接JSON字符串的方式非常繁琐,并且非常容易出错,所以一般会借助第三 ...

  3. IT兄弟连 JavaWeb教程 AJAX常见问题

    1  中文乱码问题 ●  POST提交乱码 乱码原因:所有浏览器对Ajax请求参数都使用UTF-8进行编码,而服务器默认使用ISO-8859-1去解码,所以产生乱码. 解决方法:在服务器接收请求参数前 ...

  4. IT兄弟连 JavaWeb教程 AJAX中参数传递问题

    使用Ajax发送GET请求并需要传递参数时,直接在URL地址后拼接参数,格式如下: xhr.open('get','请求路径?参数名1=参数值1&参数名2=参数值2...',true); 使用 ...

  5. IT兄弟连 JavaWeb教程 jQuery对AJAX的支持经典面试题

    1.简述对Ajax的理解 AJAX是Asynchronous JavaScript and Xml异步的JavaScript和Xml.它一种用来改善用户体验的技术其实质是使用XMLHttpReques ...

  6. IT兄弟连 JavaWeb教程 jQuery对AJAX的支持经典案例

    案例需求:编写用户登陆页面的验证码模块,在用户进行登陆时,输入验证码后不需要点击提交按钮,使用AJAX异步地向服务器发送验证验证码的请求.如果验证码正确,可以点击提交按钮,如果验证码输入错误,提示用户 ...

  7. IT兄弟连 JavaWeb教程 jQuery中其他AJAX支持的函数

    ●  $.get()函数 $.get(url,data,function,dataType);参数说明如下: url:请求地址 data:请求参数 dataType:服务器返回的数据类型 functi ...

  8. IT兄弟连 JavaWeb教程 jQuery对AJAX的支持

    jQuery对AJAX的支持 jQuery对Ajax请求的创建.发送.响应.注册数据处理函数.JSON的解析和缓存以及传参等都进行了相应的封装,同时也考虑了浏览器的兼容性问题. jQuery中对AJA ...

  9. IT兄弟连 JavaWeb教程 使用AJAX发送POST请求并获取响应

    POST请求用于向服务器发送应该被保存的数据,因此POST请求天然比GET请求多需要一份需要被保存的数据.那么这些数据应该放在何处呢?毕竟,我们的open()方法接收的三个参数都没有合适的位置. 答案 ...

随机推荐

  1. springmvc fastjson 反序列化时间格式化

    第一种情况是从后台拿到数据,进行反序列化,反序列化格式时间:试了一下很多网上的方法,最后发现还是在实体类上面的日期字段加上如下注解,可以完成格式化操作,否则默认就都是时间戳的格式: @JSONFiel ...

  2. Ruby JSON操作

      解析来我们就可以使用以下命令来安装Ruby JSON 模块: ? 1 $gem install json 使用 Ruby 解析 JSON 以下为JSON数据,将该数据存储在 input.json ...

  3. Form表单插件

    jQuery Form是一个优秀的表单插件,它可以非常容易地,无侵入地升级HTML表单以支持Ajax jQuery Form表单插件的下载地址为 http://jquery.malsup.com/fo ...

  4. LVS与Keepalived

    lvs与Nginx区别 LVS的负载能力强,因为其工作方式逻辑非常简单,仅进行请求分发,而且工作在网络的第4层,没有流量,所以其效率不需要有过多的忧虑. LVS基本能支持所有应用,因为工作在第4层,所 ...

  5. Zeppelin- Linux下安装Zeppelin

    前期部署: 下载,解压,配置PATH环境(编辑/etc/profile文件,记得source一下该文件) zepplin配置参考文档:https://zeppelin.apache.org/docs/ ...

  6. ASM磁盘组mount一例

    环境信息: oracle10gRAC  +  RHEL5.8 问题现象: db1服务器crs服务正常,ASM的data磁盘组处于dismount状态.db2集群服务正常. SQL> select ...

  7. linux ssh 命令使用解析

    前一阵远程维护Linux服务器,使用的是SSH,传说中的secure shell. 登陆:ssh [hostname] -u user 输入密码:***** 登 陆以后就可以像控制自己的机器一样控制它 ...

  8. OpenCv-Python 图像处理基本操作

    1. 图片加载.显示和保存 import cv2 img = cv2.imread("01.jpg") imgGrey = cv2.imread("01.jpg" ...

  9. HihoCoder1651 : 小球染色([Offer收割]编程练习赛38)(DP的优化)

    描述 小Ho面前有N个小球排成了一排.每个小球可以被染成M种颜色之一. 为了增强视觉效果,小Ho希望不存在连续K个或者K个以上的小球颜色一样. 你能帮小Ho计算出一共有多少种不同的染色方法么? 例如N ...

  10. 一:AMQP协议标准简单介绍

    一:AMQP协议?--->AMQP 是 Advanced Message Queuing Protocol,即高级消息队列协议.和前面罗列的技术不同,AMQP 是一个标准化的消息中间件协议--- ...