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. Java for LeetCode 117 Populating Next Right Pointers in Each Node II

    Follow up for problem "Populating Next Right Pointers in Each Node". What if the given tre ...

  2. 最全面的HashMap和HashTable的区别

    找工作期间不少企业都会问到有关HashMap和HashTable两者直接的区别,很多博客里虽然有提及但总是没有那么全面,只是一些常用的不同,现在就我自己所总结的比较全面的不同,归纳以下: HashMa ...

  3. 使用meld作为git的辅助工具

    原文链接: https://lrita.github.io/2017/05/14/use-meld-as-git-tool/?hmsr=toutiao.io&utm_medium=toutia ...

  4. jQuery(expression, [context])

    jQuery(expression, [context])         返回值:jQuery 概述 这个函数接收一个包含 CSS 选择器的字符串,然后用这个字符串去匹配一组元素. jQuery 的 ...

  5. JAVA- JDBC之DBHelper

    package com.myit.util; import java.lang.reflect.Field; import java.sql.Connection; import java.sql.D ...

  6. flash滑杆控制图片横向滚动

    flash滑杆控制图片横向滚动是一款FLASH动画图片左右滚动素材,滑杆控制滚动,效果很酷,带FLASH源文件. 下载:http://www.huiyi8.com/sc/9452.html

  7. Struts2 输入校验 第四弹

    ActionSupport 里面有一个validate.可以重写里面你的方法. 校验执行流程: 1)首先进行类型转化 2)然后进行输入校验(执行validate方法) 3)如果在上述过程中出现了任何错 ...

  8. BZOJ_3935_Rbtree

    https://lydsy.com/JudgeOnline/problem.php?id=3935 分析: 如果知道更改后的状态,那么代价和是否合法都能求出来 对不合法的情况也设一个估价函数. 随机这 ...

  9. ACM学习历程—HDU 4287 Intelligent IME(字典树 || map)

    Description We all use cell phone today. And we must be familiar with the intelligent English input ...

  10. bzoj 3267: KC采花&&3272&&3638&&3502 线段树

    题目大意 给定一个长为n的序列,维护两种操作: 1.单点修改 2.在[l,r]这段区间中取k个互不相交的子段,使子段之和最大. \(n \leq 50000,k \leq 20\) 题解 四倍经验.( ...