All articles(网络文学目录) All Pictures(图片目录) All Softwares(软件目录)

 
ASP.NET中AJAX编程开发指南_[Asp.Net教程]

Writer: 归海一刀 Article type: Programming skills(编程技巧) Time: 2014/1/30 1:18:10 Browse times: 336 Comment times: 0

ASP.NET中AJAX编程开发指南_[Asp.Net教程]


Head photo

Go homepage
Upload pictures
Write articles

ASP.NET中AJAX编程开发指南_[Asp.Net教程]

















AJAX介绍

其实AJAX应用的核心就是XMLHttpRequest,通过现象看本质,即使使用微软的AJAX服务器控件最终也是需要这些的,只不过使用微软AJAX服务器控件开发AJAX应用时我们不需要关心JS脚本的实现,只需关心业务逻辑就可以了,因而可以简化开发和提高开发速度。AJAX的基础是XHTML、CSS、DOM、JavaScript、XML及XMLHttpRequest。

正确使用AJAX技术可以改善用户体验,是用户与服务器的交互更流畅,某些情况下还能减少服务器流量。在以前AJAX只是作为一种比较炫的技术为一些大型网站所使用,现今这个比云计算还要流行了,至少云计算更多地还是停留在人们的概念里,而AJAX确确实实应用在WEB开发当中了。WEB开发人员的招聘都是言必精通AJAX技术。

下面分别讲讲在ASP.NET开发中可以供选择的开发AJAX应用的方式:

采用纯JavaScript实现

在武侠小说中绝顶高手飞花摘叶都可以伤人,在WEB开发领域真正的高手也可以无需借助任何其它库就可以开发出AJAX应用。不适用任何第三方库开发AJAX应用就需要自己区分浏览器来实例化XMLHttpRequest对象实例,下面的代码是一个简单的调用AJAX的代码:

view plaincopy to clipboardprint?






获取服务器时间的例子



















服务器时间
































































获取服务器时间的例子



















服务器时间



























































注意XMLHttpRequest.readyState共有5种状态,其可能值和对应描述如下:

0:请求未初始化,还没有调用 open()。

1:请求已经建立,但是还没有发送,还没有调用 send()。

2:请求已发送,正在处理中(通常现在可以从响应中获取内容头)。

3:请求在处理中;通常响应中已有部分数据可用了,没有全部完成。

4:响应已完成;您可以获取并使用服务器的响应了。



从上面的代码中可以看出每次实例化XMLHttpRequest对象都需要判断,一些常用的操作也可以封装一下,利用Prototype这个JavaScript脚本库就可以轻松做到这一点,实际上早期很多人就用到了Prototype来开发AJAX应用,并且在Prototype中还封装了其它很多通用的方法,大大提高了我们的开发效率。

使用Prototype

在Prototype中提供了一个Ajax对象,这样开发人员就可以直接使用Ajax对象而不必考虑如何判断浏览器类型再决定如何实例化XMLHttpRequest对象的实例了。下面的代码是使用了Protype之后的代码:

view plaincopy to clipboardprint?








使用Prototype获取服务器时间的例子





















服务器时间


































































使用Prototype获取服务器时间的例子





















服务器时间
















































































There are 0 records,
Comment:
Must be registered users to comment(必须是注册用户才能发表评论)

Disclaimer Privacy Policy About us Site Map
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.