如何在 ASP.NET 网页中实现回调
如何:在 ASP.NET 网页中实现回调
在客户端回调中,客户端脚本函数会向 ASP.NET 网页发送请求,该网页随后会运行其正常生命周期的简化版本以处理该回调。若要确保回调事件源于预期的用户界面 (UI),可以对回调进行验证。在回调验证中,应先在网页呈现过程中注册要验证的事件,然后在回调过程中对该事件进行验证。有关回调的概述,请参见在 ASP.NET 网页中不经过回发而实现客户端回调。
实现 ICallBackEventHandler 接口
对于单文件页或用户控件,可使用该页中的 @ Implements 指令实现 ICallbackEventHandler 接口,如下面的示例所示。
Visual Basic
复制代码
<%@ Page Language="VB" %>
<%@ Implements Interface="System.Web.UI.ICallbackEventHandler" %>
C#
复制代码
<%@ Page Language="C#" %>
<%@ Implements Interface="System.Web.UI.ICallbackEventHandler" %>
注意
如果使用的是代码隐藏页模型,则可以实现分部类的 ICallbackEventHandler 接口。
实现 ICallbackEventHandler 接口的 RaiseCallbackEvent 方法。RaiseCallbackEvent 方法采用表示事件参数的单个参数,如下面的示例所示。
Visual Basic
复制代码
Public Sub RaiseCallbackEvent(ByVal eventArgument As String) _
Implements System.Web.UI.ICallbackEventHandler.RaiseCallbackEvent
End Sub
C#
复制代码
public void RaiseCallbackEvent(String eventArgument)
{
}
实现 ICallbackEventHandler 接口的 GetCallbackResult 方法。GetCallbackResult 方法不使用任何参数,它将返回一个表示回调结果的字符串。在下面的示例中,将返回一个名为 returnValue 的字符串。
Visual Basic
复制代码
Public Function GetCallbackResult() _
As String Implements _
System.Web.UI.ICallbackEventHandler.GetCallbackResult
Return returnValue
End Function
C#
复制代码
public String GetCallbackResult()
{
return returnValue;
}
注册回调以进行事件验证
重写 Page 类的 Render 方法,并使用 ClientScriptManager 类的 RegisterForEventValidation 方法注册要验证的事件。可以使用 Page 类的 ClientScript 属性获取对 ClientScriptManager 类的引用。在下面的示例中,将注册一个名为 Callback1 的回调以进行事件验证。
Visual Basic
复制代码
Protected Overrides Sub Render(ByVal
相关文档:
本文介绍ASP.NET错误处理,以及介绍如果您的应用程序试图登录数据库时没有成功,则显示的错误信息不应该包括它正在使用的用户名。
要创建页中的全局处理程序,请创建 Page_Error 事件的处理程序。要创建ASP.NET应用程序范围的错误处理程序,请在 Global.asax 文件中将代码添加到 Application_Error 方法。只要您的页或应 ......
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Xml;
namespace jiu ......
ASP.NET打开新页面而不关闭原来的页面
Respose.Write("<script language='javascript'>window.open('"+ url +"');</script>"); (打开简洁窗口):
Respose.Write("<script l ......
许多程序员在做业务开发时往往会在服务器端做用户信息的验证,有没有考虑过用jquery的ajax方法来验证登陆呢?且效果比在服务器端写代码来验证好的多,页面无刷新即可实现实现登陆验证,代码也简单。
现在下面贴出来的是很简单的用jquery的ajax方法来验证登陆的代码,适合刚接触jquery的朋友学习。
前台页面代码:
<he ......
在 ASP.NET 网页中不经过回发而实现客户端回调
在 ASP.NET 网页的默认模型中,用户会与页交互,单击按钮或执行导致回发的一些其他操作。此时将重新创建页及其控件,并在服务器上运行页代码,且新版本的页被呈现到浏览器。但是,在有些情况下,需要从客户端运行服务器代码,而不执行回发。如果页中的客户端脚本维护一些状态 ......