Javascript -- ajax
2012-09-15 22:12
120 查看
使得一个web应用包含数个页面,并且导致用户的体验杂乱而又缺乏连贯性。
远程脚本运行客户端通过js向服务器发送请求,并接受服务器响应的数据,而无须刷新整个页面;同样我们可以实现页面的局部刷新,加载所需部分,而不须重新加载整个web页面
google map:输入一个地点后,主页无须重新加载,该地点的地图将动态加载到页面
google suggest:进行搜索时,显示与关键字相关的,你感兴趣的条目。并且返回搜索该条目的记录条数。
Asynchronous JavaScript + XML(异步js+xml)简称Ajax.可以归结为使用远程脚本来实现客户端/浏览器之间的通信。
XMLHttpRequest对象,打开一个到服务器的HTTP连接,并从服务器上获取XML数据。它是一个window对象的一个子对象,我们只需调用XMLHttpRequest对象的构造函数就行
var oHttp = new XMLHttpRequest();
而对于IE浏览器还是根据ActiveX控件对象来实现
一旦创建了XMLHttpRequest对象,我们就可以准备向服务器发送请求并获得数据。这一步需调用对象的open()方法
oHttp.open(requestType,url,async);
requestType:表示请求类型的字符串,可选值为GET/POST
url:目标服务器的URL
async:为true表示按照异步方式发送
send()方法向服务器发送请求,只接受一个参数,通常是一个字符串,作为请求体的一部分发送到目标服务器,当用GET方式时,并不需将数据作为请求的一部分进行发送,这时必须传入一个null.
XMLHttpRequest对象有一个status属性,表示目标服务器HTTP的响应状态,如果在目标服务器上请求未找到,返回代码404,如果成功则返回的HTTP响应代码是200
异步请求
处理异步请求的关键在于使用XMLHttpRequest对象的onreadystatechange事件处理器。当请求是异步方式,XMLHttpRequest对象提供一个readyState属性。属性的值是一个数值表示:
0:XMLHttpRequst对象创建,但未调用Open()方法
1:open()方法已经调用,但未向服务器发送请求
2:已经将请求发送到目标服务器
3:已经接受来自服务器的响应
4:从服务器返回的http响应已经被完全接受
当readyState=4 并且 status=200时表示响应成功
智能表单
在用户提交表单之前,告诉用户它所申请的用户名是否可用
最简单的方法就是提供一个超链接以发起一个目标服务器的HTTP请求,以检查用户申请的用户名等信息是否可用
远程脚本运行客户端通过js向服务器发送请求,并接受服务器响应的数据,而无须刷新整个页面;同样我们可以实现页面的局部刷新,加载所需部分,而不须重新加载整个web页面
google map:输入一个地点后,主页无须重新加载,该地点的地图将动态加载到页面
google suggest:进行搜索时,显示与关键字相关的,你感兴趣的条目。并且返回搜索该条目的记录条数。
Asynchronous JavaScript + XML(异步js+xml)简称Ajax.可以归结为使用远程脚本来实现客户端/浏览器之间的通信。
XMLHttpRequest对象,打开一个到服务器的HTTP连接,并从服务器上获取XML数据。它是一个window对象的一个子对象,我们只需调用XMLHttpRequest对象的构造函数就行
var oHttp = new XMLHttpRequest();
而对于IE浏览器还是根据ActiveX控件对象来实现
一旦创建了XMLHttpRequest对象,我们就可以准备向服务器发送请求并获得数据。这一步需调用对象的open()方法
oHttp.open(requestType,url,async);
requestType:表示请求类型的字符串,可选值为GET/POST
url:目标服务器的URL
async:为true表示按照异步方式发送
send()方法向服务器发送请求,只接受一个参数,通常是一个字符串,作为请求体的一部分发送到目标服务器,当用GET方式时,并不需将数据作为请求的一部分进行发送,这时必须传入一个null.
XMLHttpRequest对象有一个status属性,表示目标服务器HTTP的响应状态,如果在目标服务器上请求未找到,返回代码404,如果成功则返回的HTTP响应代码是200
异步请求
处理异步请求的关键在于使用XMLHttpRequest对象的onreadystatechange事件处理器。当请求是异步方式,XMLHttpRequest对象提供一个readyState属性。属性的值是一个数值表示:
0:XMLHttpRequst对象创建,但未调用Open()方法
1:open()方法已经调用,但未向服务器发送请求
2:已经将请求发送到目标服务器
3:已经接受来自服务器的响应
4:从服务器返回的http响应已经被完全接受
当readyState=4 并且 status=200时表示响应成功
智能表单
在用户提交表单之前,告诉用户它所申请的用户名是否可用
最简单的方法就是提供一个超链接以发起一个目标服务器的HTTP请求,以检查用户申请的用户名等信息是否可用
相关文章推荐
- JavaScript基础——Ajax与Comet
- Ajax跨域和Javascript跨域提示无权限的解决方案
- Javascript vue.js表格分页,ajax异步加载数据
- 不用JQuery,原生Javascript实现Ajax功能及相关知识点
- Sigma Grid(纯javascript开发的Ajax数据表格,超级强大)
- JavaScript实现拖拽预览,AJAX小文件上传
- JavaScript实现拖拽预览,AJAX小文件上传
- javascript ajax的5种状态介绍
- javascript使用原生ajax的简便方法
- <<High Performance JavaScript>>读书笔记-7.Ajax
- web前端--知识点,笔记叠加(javascript,jquery,html5+css3.0,ajax)
- 在JavaScript文件中用ajax方法实现省市区的三级联动
- JavaScript、jQuery与Ajax的关系
- 转:70个漂亮实用的JavaScript和Ajax技术(有图有例子)
- JavaScript基础之AJAX简单的小demo
- AJAX入门教程理解JavaScript中的函数
- Web2.0设计师工具箱,国外的一些网站制作资源,css,javascript,ajax,设计素材等
- Ajax知识分享(2)——JavaScript
- 解决JavaScript中使用$.ajax方式提交数组参数
- 纯javaScript脚本来实现Ajax功能例子一