原生ajax的实现
来源:互联网 发布:win10电脑主题软件 编辑:程序博客网 时间:2024/06/06 19:50
get方式请求
<script type=
"text/javascript"
>
/* 创建 XMLHttpRequest 对象 */
var
xmlHttp;
function
GetXmlHttpObject(){
if
(window.XMLHttpRequest){
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=
new
XMLHttpRequest();
}
else
{
// code for IE6, IE5
xmlhttp=
new
ActiveXObject(
"Microsoft.XMLHTTP"
);
}
return
xmlhttp;
}
// -----------ajax方法-----------//
function
getLabelsGet(){
xmlHttp=GetXmlHttpObject();
if
(xmlHttp==
null
){
alert(
'您的浏览器不支持AJAX!'
);
return
;
}
var
id = document.getElementById(
'id'
).value;
var
url=""
;
xmlHttp.open(
"GET"
,url,
true
); //Boolean参数代表同步或异步
xmlHttp.onreadystatechange=favorOK;
//成功回调函数
xmlHttp.send(); //可传参数
}
function
getOkGet(){
if
(xmlHttp.readyState==1||xmlHttp.readyState==2||xmlHttp.readyState==3){
// 本地提示:加载中
}
if
(xmlHttp.readyState==4 && xmlHttp.status==200){
var
d= xmlHttp.responseText; //后台返回结果
// 处理返回结果
}
}
</script>
post方式请求
<script type=
"text/javascript"
>
/* 创建 XMLHttpRequest 对象 */
var
xmlHttp;
function
GetXmlHttpObject(){
if
(window.XMLHttpRequest){
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=
new
XMLHttpRequest();
}
else
{
// code for IE6, IE5
xmlhttp=
new
ActiveXObject(
"Microsoft.XMLHTTP"
);
}
return
xmlhttp;
}
// -----------ajax方法-----------//
function
getLabelsPost(){
xmlHttp=GetXmlHttpObject();
if
(xmlHttp==
null
){
alert(
'您的浏览器不支持AJAX!'
);
return
;
}
var
url=
""
;
xmlhttp.open(
"POST"
,url,
true
);
xmlhttp.setRequestHeader(
"Content-type"
,
"application/x-www-form-urlencoded"
); post方式设置头
xmlhttp.send();
xmlHttp.onreadystatechange=getLabelsOK;
//成功回调函数
}
function
getOkPost(){
if
(xmlHttp.readyState==1||xmlHttp.readyState==2||xmlHttp.readyState==3){
// 本地提示:加载中/处理中
}
if
(xmlHttp.readyState==4 && xmlHttp.status==200){
var
d=xmlHttp.responseText;
// 返回值
// 处理返回值
}
}
</script>
ajax状态值:(AJAX状态值是指,运行AJAX所经历过的几种状态,无论访问是否成功都将响应的步骤,可以理解成为AJAX运行步骤。使用“ajax.readyState”获得。对于成功访问的状态(得到信息)我们大多数采用“4”进行判断。)
0 - (未初始化)还没有调用send()方法
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了
ajax状态码:(AJAX状态码是指,无论AJAX访问是否成功,由HTTP协议根据所提交的信息,服务器所返回的HTTP头信息代码,该信息使用“ajax.status”所获得;)
1**:请求收到,继续处理
2**:操作成功收到,分析、接受
3**:完成此请求必须进一步处理
4**:请求包含一个错误语法或不能完成
5**:服务器执行一个完全有效请求失败
2**:操作成功收到,分析、接受
3**:完成此请求必须进一步处理
4**:请求包含一个错误语法或不能完成
5**:服务器执行一个完全有效请求失败
阅读全文
0 0
- 原生Ajax的实现
- 原生ajax的实现
- 基于原生javascript的ajax实现
- 原生的javascript实现ajax技术
- JavaScript实现原生ajax的方法
- 原生JS实现AJAX的思路
- 原生的js实现ajax请求
- 原生JavaScript实现Ajax的使用
- 原生JS实现的AJAX方法、JSONP
- 原生js和jQuery的AJAX实现
- 原生ajax的实现+websocket理解
- 原生Ajax的原理和实现
- 原生JavaScript实现AJAX
- 原生js实现Ajax
- 原生js实现ajax
- 原生JS实现Ajax
- 原生js实现ajax
- 原生javaScript实现Ajax
- 实例详解Django的 select_related 和 prefetch_related 函数对 QuerySet 查询的优化(二)
- 从YOLOv1谈到YOLOv2(2)训练与损失函数
- 10月停课集训第二周总结
- Javascript面向对象编程(三):非构造函数的继承
- 698. Partition to K Equal Sum Subsets(M)
- 原生ajax的实现
- 网络工程师笔记《三》
- 51nod 1847 奇怪的数学题
- CentOS7--如何搭建LAMP服务环境?
- 批量源数据按时间分片聚合
- 数据库中间件 Sharding-JDBC 源码分析 —— JDBC实现与读写分离
- iOS算法总结-冒泡排序
- 【LeetCode】141.Linked List Cycle(easy)解题报告
- ROS问题总结