您现在的位置是:主页 > Web前端技术 > Web前端技术

Ajax请求对象的知识点有哪些开发技术

IDCBT2021-12-31服务器技术人已围观

简介这篇文章主要讲解了“Ajax请求对象的知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Ajax请求对象的知识点有哪

这篇文章主要讲解了“Ajax请求对象的知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Ajax请求对象的知识点有哪些”吧!

深入了解 HTTP 就绪状态

XMLHttpRequest 对象的 readyState 的属性:这个属性确保服务器已经完成了一个请求,通常会使用一个回调函数从服务器中读出数据来更新 Web 表单或页面的内容。清单 1 给出了一个简单的例子:

清单 1. 在回调函数中处理服务器的响应

function updatePage() {   if (request.readyState == 4) {     if (request.status == 200) {       var response = request.responseText.split("|");       document.getElementById("order").value = response[0];       document.getElementById("address").innerHTML =         response[1].replace(/\n/g, "<br />");     } else       alert("status is " + request.status);   }}

这显然是就绪状态最常见(也是最简单)的用法。正如您从数字 “4” 中可以看出的一样,还有其他几个就绪状态:

0:请求未初始化(还没有调用 open())。1:请求已经建立,但是还没有发送(还没有调用 send())。2:请求已发送,正在处理中(通常现在可以从响应中获取内容头)。3:请求在处理中;通常响应中已有部分数据可用了,但是服务器还没有完成响应的生成。4:响应已完成;您可以获取并使用服务器的响应了。

隐秘就绪状态

第一种就绪状态的特点是 readyState 属性为 0(readyState == 0),表示未初始化状态。**一旦对请求对象调用 open() 之后,这个属性就被设置为 1。**由于您通常都是在一对请求进行初始化之后就立即调用 open(),因此很少会看到 readyState == 0 的状态。另外,未初始化的就绪状态在实际的应用程序中是没有真正的用处的。

不过为了满足我们的兴趣,请参见 清单 2 的内容,其中显示了如何在 readyState 被设置为 0 时来获取这种就绪状态。

清单 2. 获取 0 就绪状态

  function getSalesData() {     // 创建一个请求对象     createRequest();       alert("Ready state is: " + request.readyState);     // 开始(初始化)这个请求     var url = "/boards/servlet/UpdateBoardSales";     request.open("GET", url, true);     request.onreadystatechange = updatePage;     request.send(null);   }

标签:

很赞哦! ()

本栏推荐