【旧文】AJAX总结(一)
AJAX简介
一、AJAX是什么
在传统的web应用中,用户与应用的每一次交互,都是首先用户通过浏览器向服务器端发送一个
请求,服务器解析这个请求,将相应的响应信息返回给浏览器。在服务器端业务逻辑非常复杂或者需要耗时较长的情况下,浏览器等待刷新时,页面经常是一片空
白,用户只能被动等待服务器端响应完成,在此期间客户不能在页面上做任何操作,带给用户非常糟糕的体验。
在用户只是需要刷新页面一小部分的情况下,传统的web应用需要刷新整个页面,造成网络流量的浪费,也造成响应速度变慢。
2005年,随着AJAX的出现,这种情况得到了改观。
AJAX这个术语是由Adaptive Path公司的Jesse James Garrett的定义的,他说它是Asynchronous Javascript and Xml的简写。AJAX并不是一种技术,它是多种技术的强大组合,它包括:
Ø 基于XHTML和CSS标准的表示;
Ø 使用DOM进行动态显示和交互;
Ø 使用XML和XSLT进行数据交换与处理
Ø 使用XMLHttpRequest与服务器进行异步通信;
Ø 使用JavaScript绑定一切。
在AJAX涉及的这7项技术中,DOM、XML、XMLHttpRequest、JavaScript最为有用。
二、使用AJAX的利弊
使用AJAX,可以为开发人员、终端用户带来可见的便捷:
Ø 减轻服务器的负担。AJAX的原则是“按需取数据”,可以最大程度的减少冗余请求和响应对服务器造成的负担。
Ø
无刷新更新页面,减少用户心理和实际的等待时间。特别是当读取大量数据的时候,AJAX使用XMLHTTP对象发送请求并获取服务器响应,在不重新载入整
个页面的情况下用Javascript操作DOM最终更新页面。在读取数据的过程中,用户面对的不是白屏,是原来页面的内容,用户可以继续进行其他操作,
只有当数据接收完毕之后才更新相应部分内容。
Ø 带来更好的用户体验。一直以来,B/S程序在用户易操作性、界面友好性上跟C/S相比都有较大的差距,随着AJAX的应用,这种情况将得到较大的改观。
Ø
相关文档:
Background For the basic of how to create an AJAX enabled WCF service, please refer to MSDN: http://msdn.microsoft.com/en-us/library/bb924552.aspx. For the basic of JSONP, please refer to: http://en.wikipedia.org/wiki/JSON#JSONP. This article introduce how to make AJAX enabled WCF service support cr ......
场景:在Gridview列表中显示有从数据库提取出来的数据,现在要通过jQuery.Ui.Dialog弹出显示每条数据的详细信息,并在弹出窗口中修改编辑。
需要处理的问题:1、将Gridview中选择记录ID提交给jQuery.Ui.Dialog
  ......
发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态,XMLHttpRequest对象提供了onreadyStateChange事件实现这一功能。这类似于回调函数的做法。
onreadyStateChange事件可指定一个事件处理函数来处理XMLHttpRequest对象的执行结果,如:
ajaxObj=createAjaxObject();
var url= ......
function ScreenConvert()
{
var browser = new Browser1();
var objScreen = document.getElementById("ScreenOver");
if(!objScreen)
var objScreen = document.createElement("div");
var oS = objScreen.style;
objScreen.id = "ScreenOver";
oS.display = "bloc ......