四步轻松实现ajax发送异步请求

ajax发送异步请求,供大家参考,具体内容如下

第一步(得到XMLHttpRequest)

ajax其实只需要学习一个对象:XMLHttpRequest,如果掌握了它,就掌握了ajax!!!

1.得到XMLHttpRequest

大多数浏览器都支持:var xmlHttp=new XMLHttpRequest();
IE6.0:var xmlHttp=new ActiveXObject(“Msxml2.XMLHTTP”);
IE5.0以更早版本的IE:var xmlHttp=new ActiveXObject(“Microsoft.XMLHTTP”);

2.编写创建XMLHttpRequest对象的函数

function createXMLHttpRequest(){ try{ return new XMLHttpRequest(); } catch(e){ try{ return new ActiveXObject(“Msxml2.XMLHTTP”); }catch(e){ try{ return new ActiveXObject(“Microsoft.XMLHTTP”); }catch(e){ alert(“哥们儿,你用的是什么浏览器啊?”); throw e; } } } }

第二步(打开与服务器的连接)

xmlHttp.open():用来打开与服务器的连接,它需要三个参数:

请求方式:可以是GET与POST
请求的URL:指定服务器端资源,例如:/day23_1/AServlet
请求是否为异步:如果为true表示发送异步请求,否则同步请求

xmlHttp.open(“GET”,”/day23_1/AServlet”,true);//比如

第三步(发送请求)

xmlHttp.send(null):如果不给可能会造成部分浏览器无法发送!

参数:就是请求体内容!如果是GET请求,必须给出null。
      如果是POST请求,如下

xmlHttp.send(“username=zhangSan&password=123”);

第四步:

在xmlHttp对象的一个事件上注册监听器:onreadystatechange
xmlHttp对象一共有5个状态

0:初始化未完成状态,只是创建了XMLHttpRequest对象,还未调用open()方法
1:请求已开始,open()方法已调用,但还没调用send()方法
2:请求发送完成状态,send()方法已调用
3:开始读取服务器响应
4:读取服务器响应结束(通常我们只关心最后这个状态!!!)

得到xmlHttp对象的状态

var state = xmlHttp.readyState;//可能是0、1、2、3、4

得到服务器响应的状态码(200:成功 304:状态没有改变 404 500:服务器错误)

var status=xmlHttp.status;//例如200、404、500

得到服务器响应的内容

var content=xmlHttp.responseText;//得到服务器的响应的文本格式的内容(这更通用) var content=xmlHttp.responseXML;//得到服务器的响应的xml响应的内容,它是document对象了!

所以监听器应该这样写

xmlHttp.onreadystatechange = function(){ //xmlHttp的5种状态都会调用本方法 if(xmlHttp.readyState ==4 && xmlHttp.status == 200){ //双重判断:判断是否为4状态,而且还要判断是否为200 var text=xmlHttp.responseText; } };

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

时间: 2024-11-10 04:19:23

四步轻松实现ajax发送异步请求的相关文章

四步轻松创建Win2003分布式文件系统

当微软公司最初介绍分布式文件系统(Distributed File System,简称DFS)的时候,它把终端用户希望让事情变得简单一些的注意力都集中在自己身上.这种技术的思路是用户本身并不需要知道哪些服务器资源是真正存在的.他们只要简单地通过一个特殊的共享就可以访问到文件系统,而且还可以访问到所有他们所需要的数据,无论这些数据是集中存储在本地还是分散存储在许多不同的服务器中. 尽管在用户端把把事情变得简单总是好处多多,但是我认为DFS的用途要比仅仅用于负载平衡与容错要多得多.DFS可以用来把用

chrome-谷歌浏览器,ajax发送下载请求速度是否有限制?

问题描述 谷歌浏览器,ajax发送下载请求速度是否有限制? 如图,getFile方法请求下载266Mb的文件(部署在本地IIS上的网站下载本地文件)耗时22秒左右,大概下载速度为12Mb/s,为何本地文件下载还这么慢,求问有什么方法可以提高本地或者局域网的文件下载速度呢? 解决方案 你的网卡如果是100M的网卡,那么理论最高速度是12.5MB/s(100 / 8=12.5)另外,如果你使用的是机械硬盘,那么理论最高传输率应该相当于机械硬盘传输率的1/2还要低,不过现代机械硬盘的持续传输率可以超过

用.net 处理xmlHttp发送异步请求

xml|请求|异步 最近正在拜读<<Ajax in Action>>这本书,运用书中知识,结合.net,写了这篇用.net 处理xmlHttp发送异步请求的文章. 我们要达到的目的是点击按钮,获得服务器的当前时间,aspx的html如下:Html<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits=&qu

jsp+ajax发送GET请求的方法

 本文实例讲述了ajax发送GET请求,然后通过jsp页面来接收处理的实现方法.分享给大家供大家参考.具体实现方法如下: Ajax发送GET请求 这里用一个实例演示Ajax发送get请求,实例具体要求为一个注册页面,当用户填写完用户名称时,该输入框失去焦点后会通过Ajax向后台发送验证信息,如果用户名不是admin则通过验证,否则不通过验证. 下面先看JSP页面具体信息: 代码如下: <form action="servlet/LoginServlet" method="

ajax的异步请求-用AJAX实现页面部分刷新,无法实现

问题描述 用AJAX实现页面部分刷新,无法实现 function loadXMLDoc() { var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

java问题关于ajax的异步请求前台页面的值传到后台然后再返回到前台

问题描述 java问题关于ajax的异步请求前台页面的值传到后台然后再返回到前台 前台页面上有个select框 select框中的值是从后台获取的 然后任意选中select框下面的值,让这个值传到后台作为参数 String sql="select phone deviceinfo where vehiclenumber='+select选中的值+'" 然后把查询到的phone在传到另外一个sql=select top 1 data from phone(作为表明) 关键是那个selec

[四天学会ajax] 学习Ajax教程第二天,JavaScript 和 Ajax 发出异步请求

ajax|javascript|教程|请求|异步 多数 Web 应用程序都使用请求/响应模型从服务器上获得完整的 HTML 页面.常常是点击一个按钮,等待服务器响应,再点击另一个按钮,然后再等待,这样一个反复的过程.有了 Ajax 和 XMLHttpRequest 对象,就可以使用不必让用户等待服务器响应的请求/响应模型了.本文中,Brett McLaughlin 介绍了如何创建能够适应不同浏览器的 XMLHttpRequest 实例,建立和发送请求,并响应服务器. 本系列的上一期文章(请参阅

使用 JavaScript 和 Ajax 发出异步请求

ajax|javascript|请求|异步 多数 Web 应用程序都使用请求/响应模型从服务器上获得完整的 HTML 页面.常常是点击一个按钮,等待服务器响应,再点击另一个按钮,然后再等待,这样一个反复的过程.有了 Ajax 和 XMLHttpRequest 对象,就可以使用不必让用户等待服务器响应的请求/响应模型了.本文中,Brett McLaughlin 介绍了如何创建能够适应不同浏览器的 XMLHttpRequest 实例,建立和发送请求,并响应服务器. 本系列的上一期文章(请参阅 参考资

使用JavaScript和Ajax发出异步请求

ajax|javascript|请求|异步 多数 Web 应用程序都使用请求/响应模型从服务器上获得完整的 HTML 页面.常常是点击一个按钮,等待服务器响应,再点击另一个按钮,然后再等待,这样一个反复的过程.有了 Ajax 和 XMLHttpRequest 对象,就可以使用不必让用户等待服务器响应的请求/响应模型了.本文中,Brett McLaughlin 介绍了如何创建能够适应不同浏览器的 XMLHttpRequest 实例,建立和发送请求,并响应服务器. 本文中,您将开始接触最基本和基础性