Anthem.NET 的回调流程图

下面用一个最简单的 anthem:Button 回调作为例子,理清回调过程中执行函数的次序。
代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Test.aspx.cs" Inherits="Test" %>
<%@ Register TagPrefix="anthem" Assembly="Anthem" Namespace="Anthem" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>Untitled Page</title>
    
<script type="text/javascript" language="javascript">
    
function Anthem_PreCallBack(){
        alert('Anthem_PreCallBack');
        
if (!confirm('callback?'))
            
return false;
    }
    
    
function btn1_PreCallback(){
        alert('btn1_PreCallback');
        
if (!confirm('callback?'))
            
return false;
    }
    
    
function btn1_CallbackCacelled(){
        alert('btn1_CallbackCacelled');
    }
    
    
function btn1_PostCallback(){
        alert('btn1_PostCallback');
    }
    
    
function Anthem_CallBackCancelled(){
        alert('Anthem_CallBackCancelled');
    }
    
    
function Anthem_Error(result){
        alert(result.error);
    }
    
    
function Anthem_PostCallBack(){
        alert('Anthem_PostCallBack');
    }
    
</script>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
        
<anthem:Button ID="btn1" runat="server" Text="按钮1" OnClick="btn1_OnClick"
            PreCallBackFunction
="btn1_PreCallback"
            CallBackCancelledFunction
="btn1_CallbackCacelled"
            PostCallBackFunction
="btn1_PostCallback" />
    
</div>
    
</form>
</body>
</html>

后台代码:
protected void btn1_OnClick(object sender, EventArgs e)
{
    Anthem.Manager.AddScriptForClientSideEval(
"alert('script for eval')");
    
throw new Exception("error message");
}


其流程图如下:

anthem_调用流程.jpg
原文地址:https://www.cnblogs.com/RChen/p/502062.html