ajax的简单介绍,
2015-09-24 23:23
429 查看
一、ajax(与服务器进行局部异步刷新)
执行流程:
1:ajax引擎(XMLHttpRequest)为对象注册一个监听器(事件处理函数,对状态的改变事件(readyStatechange)监听)
2:等待用户执行操作(例如点击)
3:触发了事件处理代码
4:调用ajax引擎
5:发送请求,ajax引擎被调用后单独向服务器发送请求(不是整个界面)——异步请求
6:服务器接受到了处理请求--开始处理
7:服务器将处理结果(xml或者文本)返回给了ajax引擎
8:监听相应数据
9:监听器对GUI数据更新
ajax的重要参数
重要参数:
onreadystatechange——注册一个监听器(绑定时间处理函数)
readyState返回与服务器通讯状态码Number类型
0对象创建,但是没有初始化
1对象建立但是没有调用
2发送数据(send方法被调用)
3数据传送中
4响应结束
responseText——服务器返回的文本
responseXML——服务器返回的xml dom对象
status 获得状态码
一段简单的ajax代码实例如下:
注:1.cookie都是单会话cookie,浏览器关闭后这些cookie将会丢失
2.document.cookie="userId=828; expires=GMT_String";其中GMT_String是以GMT格式表示的时间字符串,这条语句就是将userId这个cookie设置为GMT_String表示的过期时间,超过这个时间,cookie将消失,不可访问。
二、cookie的用法
三、localStorage的用法
1.测试浏览器是否支持localStorage
2,给localStorage赋值
3,获得localStorage的值
4,清除ocalStorage的值
5.通过localStorage.key(i)---取出所有key ,代码如下
执行流程:
1:ajax引擎(XMLHttpRequest)为对象注册一个监听器(事件处理函数,对状态的改变事件(readyStatechange)监听)
2:等待用户执行操作(例如点击)
3:触发了事件处理代码
4:调用ajax引擎
5:发送请求,ajax引擎被调用后单独向服务器发送请求(不是整个界面)——异步请求
6:服务器接受到了处理请求--开始处理
7:服务器将处理结果(xml或者文本)返回给了ajax引擎
8:监听相应数据
9:监听器对GUI数据更新
ajax的重要参数
重要参数:
onreadystatechange——注册一个监听器(绑定时间处理函数)
readyState返回与服务器通讯状态码Number类型
0对象创建,但是没有初始化
1对象建立但是没有调用
2发送数据(send方法被调用)
3数据传送中
4响应结束
responseText——服务器返回的文本
responseXML——服务器返回的xml dom对象
status 获得状态码
一段简单的ajax代码实例如下:
<span style="font-size:18px;"><!DOCTYPE html> <html> <head> <title></title> </head> <body> <button onclick="fun();">click me</button> <script type="text/javascript"> function getXmlHttpRequest(){ var xhr=null; if((typeof XMLHttpRequest)!='undefined'){ xhr=new XMLHttpRequest(); }else{ xhr=new ActiveXObject('Microsoft.XMLHttp'); } return xhr; } function fun(){ //1:获得ajax核心对象 var xhr=getXmlHttpRequest(); //打开一个新的请求 xhr.open('get','students.json',true); //添加一个监听器 //监听器---ajax核心对象状态 xhr.onreadystatechange=function(){ //状态码来监听 //xhr.status---服务器响应状态 ---200 xhr.readyState---ajax状态码 4 if(xhr.status==200&&xhr.readyState==4){ //响应成功 var data=xhr.responseText; var stus=eval(data); alert(stus[0].name) } } //发送请求 xhr.send(null); } </script> </body> </html></span>
注:1.cookie都是单会话cookie,浏览器关闭后这些cookie将会丢失
2.document.cookie="userId=828; expires=GMT_String";其中GMT_String是以GMT格式表示的时间字符串,这条语句就是将userId这个cookie设置为GMT_String表示的过期时间,超过这个时间,cookie将消失,不可访问。
二、cookie的用法
<span style="font-size:18px;"><span style="font-size:24px;"><span style="font-size:18px;"><!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> </body> <script type="text/javascript"> /* //设置cookie,把字符串赋值给cookie document.cookie ="name=luccy"; document.cookie ="age=32"; var strCookie=document.cookie; alert(strCookie); //将多cookie切割为多个名/值对 var arrCookie=strCookie.split("; "); var userId; //遍历cookie数组,处理每个cookie对</span> <span style="font-size:18px;">for(var i=0;i<arrCookie.length;i++){ var arr=arrCookie[i].split("="); for(var j = 0;j< arr.length;j++){ alert(arr[j]); } } *//** * 获取当前事件 * 设置cookie过期时间 * *//* var date=new Date(); var expireDays=10; //当用户再次登录刷新时间,十秒</span> <span style="font-size:18px;"> //将date设置为10秒以后的时间 date.setTime(date.getTime()+expireDays*1000); //将userId和userName两个cookie设置为10秒后过期 document.cookie="name=luccy; expires="+date.toGMTString(); */ /* * * 获取当前事件 * 删除/重置cookie * */ /* var data = new data(); data.setTime(data.getTime()-1000); document.cookie="name=luccy; expire="+date.toGMTString();*/ </script> </html></span></span></span>
三、localStorage的用法
1.测试浏览器是否支持localStorage
<span style="font-size:18px;"><span style="font-size:24px;"><span style="font-size:18px;">if(window.localStorage){ alert('这个浏览器支持本地存储'); }else{ alert('这个浏览器支持不本地存储'); }</span></span></span>
2,给localStorage赋值
<span style="font-size:18px;"><span style="font-size:24px;"><span style="font-size:18px;"> ①.localStorage.name = "json";//方法一 ②.localStorage["age"] = "18";//方法二 ③.localStorage.setItem("age","32");//方法三</span></span></span>
3,获得localStorage的值
<span style="font-size:18px;"><span style="font-size:24px;"> <span style="font-size:14px;">①.var name = localStorage.name;//方式一 ②.localStorage.getItem("age");//方式二</span> </span></span>
4,清除ocalStorage的值
<span style="font-size:18px;"><span style="font-size:24px;"><span style="font-size:14px;"> ①.localStorage.removeItem("a")</span> </span></span>
5.通过localStorage.key(i)---取出所有key ,代码如下
<span style="font-size:18px;"><span style="font-size:24px;">l<span style="font-size:18px;">ocalStorage.getItem( localStorage.key(i))--通过key取 出所有value var localStorage=window.localStorage; for(var i=0;i<localStorage.length;i++){ alert(localStorage.key(i)+" "+localStorage.getItem( localStorage.key(i))) }</span></span></span>
相关文章推荐
- JAVA基础学习(十五)--集合二--TreeSet和泛型
- 在ABP项目的应用Castle Windsor
- 管道限流利器pv
- Mongodb后台daemon方式启动
- Windows 10中如何删除系统自带的应用
- git clone
- 【Android】解析Json数据
- 排序算法三:Shell插入排序
- LInq 与lambda表达式
- symfony框架的学习1
- 关于C++中new的一些理解
- Python 基础---字典、集合
- bash脚本中的典型例子
- [Effective Java 读书笔记] 第三章类和接口 第十八--十九条
- 第一百七十五天 how can I 坚持
- Html 内嵌 选择器属性 Dom操作 JavaScript 事件
- 提高工作效率的准则
- 子域授权和view
- nagios(centreon)监控Linux日志
- 类和实例