AJax技术

AJAX技术简介及入门实例11

字号+ 作者:H5之家 来源:H5之家 2016-01-15 10:13 我要评论( )

AJAX技术的客户端请求/服务器响应机制 现在我们介绍了AJAX,对XMLHttpRequest对象以及如何创建它也有了基本的了解。如果阅读得很仔细,您可能已经知道与服务器上的Web应用程序打交道的是JavaScript技术,而不是直接提交给那个应用程序的HTML表单。 还缺少什

AJAX技术的客户端请求/服务器响应机制

      现在我们介绍了AJAX,对 XMLHttpRequest 对象以及如何创建它也有了基本的了解。如果阅读得很仔细,您可能已经知道与服务器上的 Web 应用程序打交道的是 JavaScript 技术,而不是直接提交给那个应用程序的 HTML 表单。

       还缺少什么呢?到底如何使用 XMLHttpRequest。因为这段代码非常重要,您编写的每个AJAX应用程序都要以某种形式使用它,先看看 AJAX的基本请求/响应模型是什么样吧。外语学习网

发出请求

      您已经有了一个崭新的 XMLHttpRequest 对象,现在让它干点活儿吧。首先需要一个 Web 页面能够调用的 JavaScript 方法(比如当用户输入文本或者从菜单中选择一项时)。接下来就是在所有 Ajax 应用程序中基本都雷同的流程:

从 Web 表单中获取需要的数据。 

建立要连接的 URL。 

打开到服务器的连接。 

设置服务器在完成后要运行的函数。 

发送请求。 

清单 5 中的示例 Ajax 方法就是按照这个顺序组织的:

清单 5. 发出 Ajax 请求

view plaincopy to clipboardprint

function callServer() {   

  // Get the city and state from the web form   

  var city = document.getElementById("city").value;   

  var state = document.getElementById("state").value;   

  // Only go on if there are values for both fields   

  if ((city == null) || (city == "")) return;   

  if ((state == null) || (state == "")) return;   

  // Build the URL to connect to   

  var url = "/scripts/getZipCode.php?city=" + escape(city) + "&state=" + escape(state);   

  // Open a connection to the server   

  xmlHttp.open("GET", url, true);   

  // Setup a function for the server to run when it's done   

  xmlHttp.onreadystatechange = updatePage;   

  // Send the request   

  xmlHttp.send(null);   

}  

function callServer() {

  // Get the city and state from the web form

  var city = document.getElementById("city").value;

  var state = document.getElementById("state").value;

  // Only go on if there are values for both fields

  if ((city == null) || (city == "")) return;

  if ((state == null) || (state == "")) return;

  // Build the URL to connect to

  var url = "/scripts/getZipCode.php?city=" + escape(city) + "&state=" + escape(state);

  // Open a connection to the server

  xmlHttp.open("GET", url, true);

  // Setup a function for the server to run when it's done

  xmlHttp.onreadystatechange = updatePage;

  // Send the request

  xmlHttp.send(null);

}      其中大部分代码意义都很明确。开始的代码使用基本 JavaScript 代码获取几个表单字段的值。然后设置一个 PHP 脚本作为链接的目标。要注意脚本 URL 的指定方式,city 和 state(来自表单)使用简单的 GET 参数附加在 URL 之后。

       然后打开一个连接,这是您第一次看到使用 XMLHttpRequest。其中指定了连接方法(GET)和要连接的 URL。最后一个参数如果设为 true,那么将请求一个异步连接(这就是 Ajax 的由来)。如果使用 false,那么代码发出请求后将等待服务器返回的响应。如果设为 true,当服务器在后台处理请求的时候用户仍然可以使用表单(甚至调用其他 JavaScript 方法)。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • JQuery实现Ajax加载图片的方法

    JQuery实现Ajax加载图片的方法

    2016-02-24 17:01

  • 判断用户是不是为ajax请求

    判断用户是不是为ajax请求

    2016-02-24 17:00

  • Ajax与WEB开发 by alixixi.com

    Ajax与WEB开发 by alixixi.com

    2016-02-11 11:02

  • jQuery.ajax()的相关参数及使用

    jQuery.ajax()的相关参数及使用

    2016-02-08 16:00

网友点评