1.ajax简介 :与服务器进行交互的技术
(1)异步JavaScript和xml,是可以与服务器进行交互的技术之一
(2):ajax的语言载体是javascript。JavaScript的语言载体是浏览器。
(3)ajax最大的特点:页面不刷新
2.使用ajax
ajax创建对象:
(1)主流浏览器:火狐 Google 苹果safari opera包括IE7以上版本的浏览器
var xhr = new XMLHttpRequest();
(2)IE6\7\8方式:
var xhr = new ActiveXObject("Microsoft.XMLHTTP"); //最原始的方式
var xhr = new ActiveXObject("Msxml2.XMLHTTP"); //升级
var xhr = new ActiveXObject("Msxml2.XMLHTTP.3.0"); //升级
var xhr = new ActiveXObject("Msxml.XMLHTTP.5.0"); //升级
var xhr = new ActiveXObject("Msxml2.XMLHTTP.6.0"); //IE维护的最高版本。
如下:
之前还需要进行浏览器兼容性的判断 现在已经不需要了:判断方式
3.ajax发起对服务器的请求
三步:创建对象 http请求配置 发送请求
4.ajax接收服务器返回的信息
(1)接收类型
浏览器可以接受的信息ajax都可以接收,比如 字符串 HTML
5.get post之间的区别
(1)传输的数据量: get方式的大小是受浏览器的限制,大部分为2k,post原则上没有限制,php.ini对他的限制是8M
(2)传输安全方面有区别 post传输数据是更加安全的
(3)传递数据的形式不一样 get在url地址后面是以其请求字符串形式传递参数,post方式是把form表单中的数据请求才出来以xml的形式传递给服务器。
6.get请求需要注意的两个地方
(1)在url地址后面以请求字符串(传递的get参数信息)形式传递数据
(2)对中文 = & 等特殊符号处理
如下:
服务器就是一个$_GET,客户端请求的返回,结果与输入的不相同,就是因为&特殊符号的问题,所以要进行字符编码处理。
php是使用函数 urlencode() urldecode()进行编码与反编码处理
javascript中使用encodeURIComponent进行对特殊字符进行编码处理。
结果:
7.post请求应该注意的四个地方
(1):给服务器传递数据需要调用send(请求字符串数据)方法
(2):调用方法setRequestHeader()把传递的数据组织为xml格式(模仿form表单传递数据)
(3):传递的中文信息无需编码,特殊符号仍需编码
(4)该方式请求的同时也可以传递get参数信息,同样使用$_GET
set
8.同步、异步
ajax对象.open(get/post,url,[异步true/同步false]);
ajax是可以与服务器进行异步/同步交互的技术
异步;同一时间 多进程 同步:同一时间 一个进程
9.ajax无刷新分页