ASP.NET 2.0中的ICallbackEventHandler说明
AJAX技术所提倡的无刷新回调,在原来的技术中需要写大量的JavaScript代码或使用一些AJAX框架,使得开发效率和可维护性大大降低。其实ASP.NET2.0中,已经提供了这样的接口,这就是ICallbackEventHandler。
ICallbackEventHandler存在于System.Web.UI中,我们先做一个非常简单的例子来试用一下。
第一步,在VS2005中建立一个新的WEB窗件。
第二步,在ASPX中,放上一段HTML代码(如下):
<button onclick="CallServer()">CallServer</button>
第三步,然后在<HEAD></HEAD>中放入一段JavaScript脚本:
<script type="text/javascript">
function CallServer()
{
var str = "上海XX计算机信息有限公司";
<%= ClientScript.GetCallbackEventReference(this, "str", "ReceiveServerData",null)%>;
}
function ReceiveServerData(serverResponseResult)
{
alert(serverResponseResult);
}
</script>
GetCallbackEventReference的参数说明:
第一个:实现了ICallbackEventHandler接口的页面或者服务器控件,写this代表当前页面。处理客户端回调的服务器 Control。该控件必须实现 ICallbackEventHandler 接口并提供包括必须实现string GetCallbackResult()和void RaiseCallbackEvent(eventArgument)这两个接口函数。
第二个:代表从客户端传递给服务器RaiseCallbackEvent方法的值
第三个:客户端的一个js函数名称,同时,服务器也会把计算得到的数据传递给这个函数做为这个函数的参数。
第四个:启动回调之前在客户端计算的客户端脚本。脚本的结果传回客户端事件处理程序。
第四步,在此ASPX的后台CS代码中,继承ICallbackEventHandler接口,并实现接口中的两个方法: ICallbackEventHandler.GetCallbackResult() 和 ICallbackEventHandler.RaiseCallbackEvent(string eventArgument),并且在Form_load里面添加ClientScript.GetCallbackEventReference(this, "", "", null);
第五步,增加一个变量CallBackValue,并修改接口的两个方法为:
#region ICallbackEventHandler Members
string ICallbackEventHandler.GetCallbackResult()
{
return CallB
相关文档:
会ajax的飘过
看论坛里好多人在找后台获取js表格的数据,就把以前的方法放在这里了
前台:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xht ......
public string ClearHtml(string HtmlStr)
{
string tmpStr = HtmlStr;
tmpStr = ReplaceHtml("&#[^>]*;", tmpStr, "");
tmpStr = ReplaceHtml("</?marquee[^>]*>", tmpStr, "");
tmpStr = ReplaceHtml("</?object[^>]*>", tmpStr, "");
tmpSt ......
基本结构:
第一步准备实体类:
[Serializable]
public class Person
{
/// <summary>
/// 编号
/// </summary>
&n ......
ASP.NET程序中常用的三十三种代码
1. 打开新的窗口并传送参数:
传送参数:
response.write("<script>window.open(’*.aspx?id="+this.DropDownList1.SelectIndex+"&id1="+...+"’)</script>")
接收参数:
string a = Request.QueryString("id");
string& ......