2024年4月10日发(作者:)
使用JS和Ajax发出异步请求
本文介绍了如何创建能够适应不同浏览器的XMLHttpRequest实例,建立和发送请求,并
响应服务器。您将开始接触最基本和基础性的有关Ajax的全部对象和编程方法:
XMLHttpRequest对象。该对象实际上仅仅是一个跨越所有Ajax应用程序的公共线程,您可能
已经预料到,只有彻底理解该对象才能充分发挥编程的潜力。
XMLHttpRequest简介
XMLHttpRequest 是JS的一个对象。它是介绍 Web 2.0、Ajax 和大部分其他内容的核心。下
面给出该对象的几个方法和属性:
1、open():建立到服务器的新请求。
2、send():向服务器发送请求。
3、abort():退出当前请求。
4、readyState:提供当前 HTML 的就绪状态。
5、responseText:服务器返回的请求响应文本。
用XMLHttpRequest能够做什么呢,值得注意的是这些方法和属性都与发送请求及处理响应有
关。事实上,如果看到XMLHttpRequest的所有方法和属性,就会发现它们都与非常简单的请
求/响应模型有关。用好该对象可以彻底改变您的应用程序。
创建XMLHttpRequest对象实例
首先需要创建一个新变量并赋给它一个XMLHttpRequest对象实例。这在JS中很简单,只要对
该对象名使用new关键字即可.创建新的XMLHttpRequest对象:var request = new
XMLHttpRequest();
创建 XMLHttpRequest的Java伪代码:XMLHttpRequest request = new XMLHttpRequest();
错误与跨浏览器处理
在实际上各种事情都可能出错,而上面的代码没有提供任何错误处理。较好的办法是创建该对象,
并在出现问题时优雅地退出。比如,任何较早的浏览器都不支持 XMLHttpRequest,您需要让
这些用户知道有些地方出了问题。下面说明如何创建该对象,以便在出现问题的时候发出
JavaScript 警告。
创建具有错误处理能力的XMLHttpRequest对象
一定要理解这些步骤:
1、创建一个新变量 request 并赋值 false。后面将使用 false 作为判定条件,它表示还没有创
建 XMLHttpRequest 对象。
2、增加 try/catch 块:
3、尝试创建 XMLHttpRequest 对象。
4、如果失败(catch (failed))则保证 request 的值仍然为 false。
5、检查 request 是否仍为 false(如果一切正常就不会是 false)。
6、如果出现问题(request 是 false)则使用 JavaScript 警告通知用户出现了问题。
现在已经得到了一段带有错误检查的XMLHttpRequest对象创建代码,还可以告诉您哪儿出了
问题。
增加对Microsoft浏览器的支持
下面分别介绍每一步:
1、创建一个新变量 request 并赋值 false。使用 false 作为判断条件,它表示还没有创建
XMLHttpRequest 对象。
2、增加 try/catch 块:
3、尝试创建XMLHttpRequest对象。
4、检查 request 是否仍然为 false(如果一切顺利就不会是 false)。
5、如果出现问题(request 是 false)则使用 JavaScript 警告通知用户出现了问题。
这样修改代码之后再使用InternetExplorer试验,就应该看到已经创建的表单(没有错误消息)。
静态代码与动态代码
代码都直接嵌套在script标记中,不放到方法或函数体中的JS代码称为静态JS。这种情


发布评论