用ASP.NET 2.0实现AJAX风格的Web开发

http://tech.ddvip.com   2007年05月24日    社区交流

本文详细介绍用ASP.NET 2.0实现AJAX风格的Web开发

  列表2:ProgressBar.js

<script language="javascript">
var isCompleted=false;
//这个函数初始化到服务器端的回调
function DrawProgressBar(){
 ##InitiateCallBack##;
 if (!isCompleted) {
window.setTimeout('DrawProgressBar()',200);
 }
 else
 {
isCompleted=false;
document.getElementById("ProgressBarContainer").style.display = 'none';
 }
}
//当thecallback完成时,下列函数被调用
function UpdateProgressBar(percent){
 if (percent == 'completed'){
isCompleted=true;
 }
 else{
document.getElementById("ProgressBar").width = percent;
 }
}

  通过使用在ASP.NET 2.0提供的客户端回调函数,实现进度条控件是比较直接的,因为在控件和客户端之间传递的数据仅是一个简单的字符串。然而,一旦我们把其它数据类型也添加到其中,我们就遇到在JavaScript和.NET类型系统之间不匹配的问题。遗憾的是,ASP.NET 2.0中的回调函数实现对此并无多大帮助。任何想使用多种数据类型(简单类型和复杂类型)的应用程序,都要实现一种自己的定制模式。

  幸好,这种限制能够通过使用一个AJAX.NET开源库来加以克服,AJAX.NET实现了一种基于代理的方式来调用服务器端函数。AJAX.NET定义了一种称为AJAXMethod的定制属性。当一个服务器端方法用AJAXMethod加以修饰时,一个基于JavaScript的客户端代理将被HttpHandler(它是AJAX.NET库的一部分)自动生成。不同于ASP.NET 2.0,它支持单个参数的字符串类型以便用于回调实现。AJAX.NET支持整数,字符串,双精度数,DateTime,DataSet等多种类型。

来源:天极开发    作者:朱先忠    责编:豆豆技术应用

正在加载评论...