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. Linux下/usr/bin/python被删除的后果

    可能部分的人使用linux都有直接root登陆的习惯,这有很大的便利性,因为很多的命令不需要使用sudo请求root权限.但是使用root权限,所有的命令都会立即被执行,即使这个命令是对系统有害处的. ...

  2. 使用log4j将不同级别的日志信息输出到不同的文件中

    使用log4j.xml xml格式的配置文件可以使用filter. 例如想只把log4j的debug信息输出到debug.log.error信息输出到error.log,info信息输出到info.l ...

  3. webpack三种代码

    在使用webpack时,主要有三种代码类型: 1.你或你的团队写的源码 2.第三方library或vendor代码 3.管理模块交互的runtime和manifest 什么是manifest文件? 通 ...

  4. Django+ajax+jsonp实现借口调用文本处理

    首页 提交 <script src="/static/jquery-2.1.4.min.js"></script> <script type=&quo ...

  5. 2014暑假ACM训练总结

    2014暑假ACM训练总结报告 匆匆之中,一个暑假又过去了,在学校训练的这段日子真的是感觉日子过得好快啊! 时光如箭,日月如梭! 匆忙的学习之中一个暑假就这样结束了,现在就来写一些总结吧,供自己以后阅 ...

  6. Hive- Hive Web Interface

    当我们安装好hive时候,我们启动hive的UI界面的时候,命令: hive –-service hwi ,报错,没有war包 我们查看hive/conf/hive-default.xml.templ ...

  7. css(3)

    行内元素和块内元素可以通过定义display的属性值进行相互转换. 想要叫ul中的li实现横向显示可以在li中加入布局"float:left": 如: /*这个用于控制单个图片区域 ...

  8. Elasticsearch mapping文档相似性算法

    Elasticsearch allows you to configure a scoring algorithm or similarity per field. The similarityset ...

  9. TF-IFD算法及python实现关键字提取

    TF-IDF算法: TF:词频(Term Frequency),即在分词后,某一个词在文档中出现的频率. IDF:逆文档频率(Inverse Document Frequency).在词频的基础上给每 ...

  10. struct tm 和 time_t 时间和日期的使用方法(转

    关键字:UTC(世界标准时间),Calendar Time(日历时间),epoch(时间点),clock tick(时钟计时单元) .概念 在C/C++中,对字符串的操作有很多值得注意的问题,同样,C ...