开发者社区


Web服务 | ASP/ASP.Net | JSP | PHP/Perl | 网站设计
首页 - WEB技术
Web技术
全文搜索:   

完全了解AJAX
作者: Chris Duckett, Builder AU
2006-08-14 17:34:46



创建时间选择

既然我们已经知道如何创建XMLHttpRequest,那么还需要考虑何时来创建。在XMLHttpRequest对象创建的示例中,尽管我们事先没有发送任何请求,但仍可以创建成功,也就是说,我们可以在需要的时候创建对象。 

当你需要创建XMLHttpRequest对象时,面对的一个问题是没有信息显示客户能否创建该对象。假设一个用户访问你的网站并且无法创建XMLHttpRequest对象,如果能从第一时间就知道AJAX没有被选择,你就可以更早地提供给他们。

对于一个开始与你的Web应用程序进行互动的用户,当他们被告知只有点击提交按钮才能使用该程序时,这决不是一件好事,让他们填写表单也是完全在浪费时间。

然而如果在页面打开阶段就能试图创建XMLHttpRequest,在用户开始互动之前就提供选择,比如转入非AJAX页面。

设置请求

眼下,有一个页面在加载后就需要创建XMLHttpRequest对象,我们现在有意做出请求。

为此,我们必须向打开方式传递至少两个参数,其中大部分参数的含义都可以直接理解。

xmlhttp.open(Method, Url [, Async] [, User] [, Password])

参数Method定义了请求方法;可选择的有"POST", "GET" 或 "HEAD"。首先,我们只准备使用GET。

Url是要请求页面的url字符串。我们无法访问和向旧页面做出请求,有一个阻止我们访问与所创建请求页面不在同一范围内的其他页面的壁垒。

Async也是AJAX建立的基础。尽管前者在API中是一个备选参数,但在这里该参数是强制性选项,必须设置为true,如果设为false,该项将保持直到获得响应。该参数的默认值是True,所以你可以选择不设置,但是考虑到可读性以及可维护性,强烈推荐设置该值。

用户名和密码用于验证身份时选择

一旦我们设置Async为true,我们需要定义一种命令方式,用于回应请求状态改变-可以通过设置XMLHttpRequest对象中的onreadystatechange属性完成。

xmlhttp.onreadystatechange = myReturnMethod;

xmlhttp.send(null);

最后需要做的是把请求发送出去,先说最简单的,我们只发送不含任何附加数据的请求:

在一个简单的示例中综合了上述所有内容:

xmlhttp.open("GET", "/some_dir/myfile.html", true);

xmlhttp.onreadystatechange = myReturnMethod;

xmlhttp.send(null);

上述三行代码就是我们进入AJAX世界所需要的全部内容,没有包含任何复杂的概念或曲折的逻辑。

【上一页】 【下一页】
声明:
Builder.com.cn(原ZDNet China应用开发频道)原创文章版权所有,未经许可严禁转载,且不构成投资建议。
近期相关报道:
实用技术文档
J2me XML
C/C++ C#
Java Oracle
Mysql .Net
VB.NET CSS
SQL Server 数据库
SQL UNIX
Linux Jsp
PHP Perl
Javascript IIS
XHTML ColdFusion
ASP/ASP.NET Apache
AJAX
订阅技术邮件
订阅"技术圈"杂志!请在下面选择您感兴趣的专题,填写e-mail地址,然后按订阅按钮:
应用开发管理
VS.NET 周刊
Database 周刊
WEB Service周刊
JAVA 周刊
IT 认证
Windows服务器周刊
互联网开发
当Windows Server 2008专家得5000元现金大奖
Copyright (c) 2006 CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
ZDNet 公司标识是 CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号