对ajax的了解
2017-03-11 17:05
106 查看
1.什么是ajax?
ajax的英文名称:Asynchronous JavaScript and XML(异步的javascript和xml),ajax是一种无需重新加载页面,自动更新部分页面的技术,ajax的使用案例:百度的搜索框的关键字、登陆和注册的表单验证、股票信息的自动更新等。
2.传统的开发模式与ajax的开发模式的不同之处
传统的开发模式:同步执行,页面需要重新加载才可以有页面信息,效率不高。
ajax的开发模式:异步执行,页面不需要重新加载,自动更新页面信息,效率高。
3.ajax.js文件的编写步骤
(1)、创建ajax对象
创建XMLHTTPRequest对象,用于后台和服务器的交换数据,意味着:能无需重新加载页面的情况下,自动更新页面。注意:XMLHTTPRequest对象是所有浏览器都支持的对象,当然老版本的浏览器还不支持,如:IE7以下的版本。还是需要考虑兼容性问题。
demo:
(2)、连接服务器
(3)、发送请求
(4)、接受返回值
请求状态监控:onreadystatechange事件
readyState属性:请求状态
0 (未初始化)还没有调用open()方法,尚未初始化
1 (载入)已调用send()方法,正在发送请求,正在加载
2 (载入完成)send()方法完成,已收到全部响应内容,加载完成
3 (解析)正在解析响应内容,正在处理
4 (完成)响应内容解析完成,可以在客户端调用了,处理完成
status属性:请求结果
demo:
4.ajax的使用过程
a、先写好ajax.js文件,并连接到静态页面html
b、写好文本,放在服务器站点上
demo:
c、处理缓存方法
阻止缓存方法:浏览器通过访问url的来识别决定是否使用缓存,(只要url地址在变,就可以了解决缓存问题)。也可以在路径那里加上get数据来阻止缓存。getTime()是毫秒数
demo:
5.HTTP请求方法
GET是用于获取数据(如:浏览帖子):
POST是用于上传数据(如:用户注册):
get、post的区别:
get是在url里传数据、安全性不高,容易泄露信息内容,容量小:有缓存,
post安全比较好,不通过网址url传递信息,可以传大文件:2G,容量大,没有缓存
ajax的英文名称:Asynchronous JavaScript and XML(异步的javascript和xml),ajax是一种无需重新加载页面,自动更新部分页面的技术,ajax的使用案例:百度的搜索框的关键字、登陆和注册的表单验证、股票信息的自动更新等。
2.传统的开发模式与ajax的开发模式的不同之处
传统的开发模式:同步执行,页面需要重新加载才可以有页面信息,效率不高。
ajax的开发模式:异步执行,页面不需要重新加载,自动更新页面信息,效率高。
3.ajax.js文件的编写步骤
(1)、创建ajax对象
创建XMLHTTPRequest对象,用于后台和服务器的交换数据,意味着:能无需重新加载页面的情况下,自动更新页面。注意:XMLHTTPRequest对象是所有浏览器都支持的对象,当然老版本的浏览器还不支持,如:IE7以下的版本。还是需要考虑兼容性问题。
demo:
//1.创建ajax对象 var xmlhttp; if (window.XMLHttpRequest) {// 兼容 IE7+, Firefox火狐, Chrome谷歌, Opera欧朋, Safari xmlhttp=new XMLHttpRequest(); } else {// 兼容 IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); }
(2)、连接服务器
//2.连接服务器 //open(方法, 文件名, 异步传输) oAjax.open('GET', 'a.txt', true);
(3)、发送请求
//3.发送请求 oAjax.send();
(4)、接受返回值
请求状态监控:onreadystatechange事件
readyState属性:请求状态
0 (未初始化)还没有调用open()方法,尚未初始化
1 (载入)已调用send()方法,正在发送请求,正在加载
2 (载入完成)send()方法完成,已收到全部响应内容,加载完成
3 (解析)正在解析响应内容,正在处理
4 (完成)响应内容解析完成,可以在客户端调用了,处理完成
status属性:请求结果
demo:
//4.接收返回 oAjax.onreadystatechange=function() {// //oAjax.readyState //浏览器和服务器,进行到哪一阶段了 if(oAjax.readyState==4) //处理完成, { if(oAjax.status==200) //成功,200状态码 { alert('成功:'+oAjax.responseText);//成功就返回文本信息 } else { alert('失败:'+oAjax.status); }//失败就返回状态码 } };
4.ajax的使用过程
a、先写好ajax.js文件,并连接到静态页面html
b、写好文本,放在服务器站点上
demo:
<script> window.onload=function () {//页面加载时 var oBtn=document.getElementById('btn1'); oBtn.onclick=function () {//oBnt对象点击事件,调用ajax.js文件里的ajax(url, fnSucc, fnFaild)方法,注意url文件路径必须是英文,不可有中文,相对路径或绝对路径都可以。 ajax('aaa.txt', function (str){ alert(str);//成功则返回文本中的内容 }, function (){ alert('失败');//不成功返回‘失败’ }); }; }; </script>
c、处理缓存方法
阻止缓存方法:浏览器通过访问url的来识别决定是否使用缓存,(只要url地址在变,就可以了解决缓存问题)。也可以在路径那里加上get数据来阻止缓存。getTime()是毫秒数
demo:
<script> window.onload=function () { var oBtn=document.getElementById('btn1'); oBtn.onclick=function () { ajax('aaa.txt?t='+new Date().getTime(), function (str){//在url路径上添加get方法即可阻止缓存问题,当然也可以在浏览器上改变url路劲 alert(str);//var arr=eval(str);ajax.js读取的数据是字符串,如果文本内容是数组,要将数组变字符串,就要使用到eval()方法 }, function (){ alert('失败'); }); }; }; </script>
5.HTTP请求方法
GET是用于获取数据(如:浏览帖子):
POST是用于上传数据(如:用户注册):
get、post的区别:
get是在url里传数据、安全性不高,容易泄露信息内容,容量小:有缓存,
post安全比较好,不通过网址url传递信息,可以传大文件:2G,容量大,没有缓存
相关文章推荐
- AJAX学习之序列一:JavaScript关键特征,你了解几个?
- 对ajax的初步了解
- 快速了解Ajax
- 了解使用 ASP.NET AJAX 进行局部页面更新(一)
- 深入了解AJAX
- Ajax了解
- ajax传值后台获取初步了解
- 通过一个简单的AJAX实例,了解其大致步骤
- 快速了解AJAX
- 【转】了解使用 ASP.NET AJAX 进行局部页面更新
- $.ajax()方法各参数详细了解
- 初步了解JavaScript,Ajax,jQuery,并比较三者关系
- 了解 ASP.NET AJAX UpdatePanel 触发器(二)
- ASP.NET 2.0 AJAX 第三天:了解ASP.NET AJAX体系结构
- AJAX了解
- 【前端知识点】你所不了解的Ajax和Http状态字
- 了解 ASP.NET AJAX Web 服务——ASP.NET AJAX学习笔记“出自msdn”
- 初步了解 ASP.NET AJAX 扩展
- 了解 ASP.NET AJAX 验证和配置文件应用程序服务(三)
- ajax初步了解