Ajax的全称:Asynchronous JavaScript And XML(异步的 JavaScript 和 XML)。

Ajax不是某种编程语言,是一种在无需重新加载整个网页的情况下能够更新部分网页的技术。

如何实现Ajax技术(要有这三个方面):

1、运用HTML和CSS来实现页面,表达信息;

2、运用XMLHttpRequest和web服务器进行数据的异步交换;

3、运用JavaScript操作DOM,实现动态局部刷新。

创建XMLHttpRequest对象:

var request = new XMLHttpRequest();

如何兼容IE5、IE6甚至更早的版本?

HTTP请求:

什么是HTTP:http是计算机通过网络进行通信的规则。

HTTP是一种无状态的协议(无状态协议指的是浏览器与服务器不建立持久的连接)。

一个完整的http请求过程,通常有下面7个步骤:

  1、建立TCP连接

  2、web浏览器向web服务器发送请求命令

  3、web浏览器发送请求头信息

  4、web服务器应答

  5、web服务器发送应答头信息

  6、web服务器向浏览器发送数据

  7、web服务器关闭TCP连接

HTTP请求

一个HTTP请求一般由四部分组成:

  1、HTTP请求的方法或动作,比如是GET还是POST请求

  2、正在请求的URL,总得知道请求的地址是什么吧

  3、请求头,包含一些客户端环境信息,身份验证信息等

  4、请求体,也就是请求正文,请求正文中可以包含客户提交的查询字符串信息,表单信息等等

  一个典型的请求如下:

  

GET:一般用于信息获取

  使用URL传递参数

  对所发送的信息数量也有限制,一般在2000个字符

POST:一般用于修改服务器上的资源

  对所发送的信息数量无限制

一个HTTP响应一般由三部分组成

  1、一个数字和文字组成的状态码,用来显示请求是成功还是失败

  2、响应头,响应头和请求头一样包含许多有用的信息,例如服务器类型,日期时间,内容类型和长度等

  3、响应体,也就是响应正文

  一个典型的响应内容如下:

  

HTTP状态码一般由3位数字构成,其中首位数字定义了状态码的类型:

  1XX 信息类,表示收到web浏览器请求,正在进一步处理中

  2XX 成功,表示用户请求被正确接收,理解和处理,例如200 OK

  3XX 重定向,表示请求没有成功,客户必须采取进一步的动作

  4XX 客户端错误,表示客户端提交的请求有错误,例如404 NOT Found,意味着请求中所引用的文档不存在

  5XX 服务器错误,表示服务器不能完成对请求的处理,例如500

XMLHttpRequest发送请求

open(method,url,async)

  method:get/post 不区分大小写

  url:请求地址  

  async:同步或者异步,true为异步处理,false为同步请求,一般默认为异步请求

send(string)

  一般get不填参数,post要填参数

  

XMLHttpRequest取得响应

获取响应值:

  responseText:获得字符串形式的响应数据

  responseXML:获得XML形式的响应数据

  status和statusText:以数字和文本形式返回HTTP状态码

  getAllResponseHeader():获取所有的响应报头

  getResponseHeader():查询响应中的某个字段的值

在响应返回成功时得到通知:

  readyState属性:

    0:请求未初始化,open还没有调用

    1:服务器连接已建立,open已经调用了

    2:请求已接收,也就是接收到头信息了

    3:请求处理中,也就是接收到响应主体了

    4:请求已完成,且响应已就绪,也就是响应完成了

    如果我们想知道服务器响应有没有成功,就需要监听以上的属性值变化

    监听方法:

    

  以上概念实例化代码如下:

  

三、jQuery--Ajax基础--Ajax全接触--Ajax在JS中的应用的更多相关文章

  1. 11月10日上午ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  2. ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  3. 14.ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  4. ajax异步处理时,如何在JS中获取从Servlet或者Action中session,request

    ssh项目中,我需要登陆某个页面(如a.jsp),通过onblur()鼠标失去焦点后来触发js函数(函数是ajax请求)请求到相应的action,处理完成后将数据存放到session对象里面,然后在a ...

  5. jQuery 对AMD的支持(Require.js中如何使用jQuery)

    AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一个可用的模块化 JavaScript 的解决方案. AMD 模块格 ...

  6. 三、jQuery--jQuery基础--jQuery基础课程--第8章 jQuery 实现Ajax应用

    1.使用load()方法异步请求数据 使用load()方法通过Ajax请求加载服务器中的数据,并把返回的数据放置到指定的元素中,它的调用格式为:load(url,[data],[callback]) ...

  7. jQuery基础---Ajax基础教程(二)

    jQuery基础---Ajax进阶 内容提纲: 1.加载请求 2.错误处理 3.请求全局事件 4.JSON 和 JSONP 5.jqXHR 对象 发文不易,转载请注明出处! 在 Ajax 基础一篇中, ...

  8. jQuery基础---Ajax基础教程

    jQuery基础---Ajax基础 内容提纲: 1.Ajax 概述 2.load()方法 3.$.get()和$.post() 4.$.getScript()和$.getJSON() 5.$.ajax ...

  9. 史上最全的Ajax基础详解

    同步请求和异步请求 先解释一下同步和异步的概念: 同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式. 异步是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯 ...

随机推荐

  1. gc是什么,什么时候需要gc

    Java是由C++发展来的. 它摈弃了C++中一些繁琐容易出错的东西.其中有一条就是这个GC. 写C/C++程序,程序员定义了一个变量,就是在内存中开辟了一段相应的空间来存值.内存再大也是有限的,所以 ...

  2. BZOJ3924——[Zjoi2015]幻想乡战略游戏

    0.题意:动态维护带权中心 1.分析:妈的,这题做了一天,mdzzzzzzzzzzzzzzzzzz-.. 这个题是边权,我们首先要将边权转化成点权... 我们维护一个分支结构中到根的距离和,一个分支结 ...

  3. 跟着百度学PHP[4]OOP面对对象编程-8-继承

    如下图所示.人就是父类!而NBA球员以及女主播就是子类 要继承一个类,那么在类名的后面加上extends 要继承的类名 具体格式:class Student extends human{}     # ...

  4. 剑指Offer 变态跳台阶

    题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法.   其实就是斐波那契数列问题. 假设f(n)是n个台阶跳的次数. f(1) = ...

  5. C语言的执行

    在ANSIC 的任何一种实现中,有两种不同的环境 翻译环境:将源代码转换为可执行的机器代码 执行环境:用于执行代码 这两种环境可以运行于同一个机器上,也可以运行于不同的机器上 例如交叉编译器:在一台机 ...

  6. html之左边不动右边内容自动修剪并出现滚动轮查看剩余内容

    <html lang="en"> <head> <meta charset="UTF-8"> <title>Ti ...

  7. nested exception is java.lang.RuntimeException: Error parsing Mapper XML. Cause: java.lang.IllegalArgumentException: Result Maps collection already contains value for

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'daoSupport': ...

  8. 【MySQL】MySQL 如何实现 唯一随机数ID

    如果不是 UUID 好像比较困难 参考资料: http://bbs.csdn.net/topics/390001507 https://www.zhihu.com/question/20151242

  9. LINQ查询数组里面是否包含某值

    #region linq to 数组            //定义数组,并初始化            string [] array = new string []{"Juan" ...

  10. iOS coredata 级联删除

    应用场景如下,每个用户可以设定多个提醒,当删除一个用户时,应当把相关的提醒都删除,而删除一个提醒时,应当把提醒从用户信息中删除. 那么 Profile 应该建立一个如下图的relationship 而 ...