原生 ajax 的应用(客户端的代码说明)
2015-03-24 09:47
316 查看
在网页中使用原生的ajax,首先第一步需要创建XMLHttprequest。创建的方式如下:
第二部:请求
XMlHttpRequest 发送请求分为两步(两个方法)
open(method,url,async)
1,get或者post 2,url地址 3,同步还是异步 异步为true,同步为false,默认为true,可以不填写
send(String)
这个方法中send 中的string字符串可以为空。如果open()方法中为get时,则不填写。如果为post的可以填写参数。
下面几个例子
第三步: Xmlhttprequest 取得响应
大致有一下这些方法:
responseText :获取字符串形式的响应数据
responseXML :获取xml形式的响应数据
status 和 statusText :以数字和文本形式返回HTTP状态吗
getAllResponseHeader():获取所有的响应报头
getResponseHeader() : 查询响应中的某个字段的值
readyState是XMLHttpRequest对象的一个属性,用来标识当前XMLHttpRequest对象处于什么状态。
status是XMLHttpRequest对象的一个属性,表示响应的HTTP状态码。
获取readyState属性,获取状态,判断响应是否完成。
0:请求未初始化,open还没有调用
1:服务器连接已经建立,open已经调用。
2:请求已接收,也就是接收到头信息了
3:请求处理中,也就是接收到响应主体了。
4:请求已完成,且响应也已就绪,也就是响应完成了。
通过onreadystatechange 来监听XMLHttprequest 的 readyState 属性的值:
例子:
var request; if(window.XMLHttpRequest){ request = new XMLHttpRequest(); //ie7+,Fiefox,Chrome,Oprea,Safari }else{ request = new ActiveXObject("Microsoft.XMLHTTP"); //ie6,ie5 这样主要为了兼容性考虑 }
第二部:请求
XMlHttpRequest 发送请求分为两步(两个方法)
open(method,url,async)
1,get或者post 2,url地址 3,同步还是异步 异步为true,同步为false,默认为true,可以不填写
send(String)
这个方法中send 中的string字符串可以为空。如果open()方法中为get时,则不填写。如果为post的可以填写参数。
下面几个例子
1, request.open("get","get.php",true); request.send(); 2, request.open("post","post.php",true); request.send(); 3, request.open("post","create.php",true); request.setRequestHeader("Content-type","application/x-www.form-urlencoded"); request.send("name=张三&sex=男");
第三步: Xmlhttprequest 取得响应
大致有一下这些方法:
responseText :获取字符串形式的响应数据
responseXML :获取xml形式的响应数据
status 和 statusText :以数字和文本形式返回HTTP状态吗
getAllResponseHeader():获取所有的响应报头
getResponseHeader() : 查询响应中的某个字段的值
readyState是XMLHttpRequest对象的一个属性,用来标识当前XMLHttpRequest对象处于什么状态。
status是XMLHttpRequest对象的一个属性,表示响应的HTTP状态码。
获取readyState属性,获取状态,判断响应是否完成。
0:请求未初始化,open还没有调用
1:服务器连接已经建立,open已经调用。
2:请求已接收,也就是接收到头信息了
3:请求处理中,也就是接收到响应主体了。
4:请求已完成,且响应也已就绪,也就是响应完成了。
通过onreadystatechange 来监听XMLHttprequest 的 readyState 属性的值:
例子:
request.open("get","get.php",true); request.send(); request.onreadystatechange = function(){ if(request.readyState == 4 && request.status == 200){ //业务处理代码 //request.responseText :获取字符串形式的响应数据 //request.responseXML :获取xml形式的响应数据 } }
相关文章推荐
- AJAX示例应用-2(两级菜单的联动)-方式2(服务器以字符串形式执行代码在客户端运行)
- 简单ASP.NET AJAX 客户端应用:用JS直接调用WebServices方法
- AJAX客户端说明,XMLHttpRequest对象
- AJAX.NET的UpdatePanel全面应用(3) (客户端)
- Ajax简要应用说明及技术开发实例
- Ajax简要应用说明及技术开发实例
- 客户端调用后台代码,Ajax.DLL在WebConfig和页面中的设置
- ASP.NET AJAX客户端编程之旅(四)——以组件的思想开发Ajax应用:客户端组件初探
- AJAX.NET的UpdatePanel全面应用(3) (客户端)
- Ajax应用中使用Json的补充说明
- Ajax简要应用说明及技术开发实例
- AJAX客户端说明,XMLHttpRequest对象
- ASP.NET AJAX 说明文档->客户端引用->全局命名空间->JavaScript 基础类型扩展->Array 类型扩展->addRange 函数
- ASP.NET AJAX 说明文档->客户端引用->全局命名空间->JavaScript 基础类型扩展->Array 类型扩展->add 函数
- 在ajax中让客户端弹出警告窗口的代码
- AJAX初级应用-RSS无刷新聚合器的代码与下载第1/3页
- [CommunityServer]AJAX客户端说明,XMLHttpRequest对象
- ASP.NET AJAX 说明文档->客户端引用->全局命名空间->JavaScript 基础类型扩展->Array 类型扩展
- ASP.NET AJAX 说明文档->客户端引用->全局命名空间->JavaScript 基础类型扩展->Array 类型扩展->clone 函数
- ASP.NET中,客户端利用 ASP.NET AJAX(Atlas)调用服务端方法的代码