HTML:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="Web.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
</div>
</form>
</body>
</html>
C# :
using System;
using System.Drawing;
using System.Web.UI;
namespace Web
{
public partial class WebForm1 : System.Web.UI.Page, IPostBackEventHandler
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
var s = "if(confirm('后台已经处理了一部分计算,结果是xxxxx。要继续吗?')){0};else {1};";
ScriptManager.RegisterStartupScript(this, typeof(WebForm1), "计算中",
string.Format(s, this.ClientScript.GetPostBackEventReference(this, "继续"), this.ClientScript.GetPostBackEventReference(this, "中止")),
true);
}
public void RaisePostBackEvent(string eventArgument)
{
switch (eventArgument)
{
case "继续":
this.Button1.ForeColor = Color.Green;
break;
case "中止":
this.Button1.ForeColor = Color.Red;
break;
}
}
}
}
主要用到了IPostbakcEventHandler ,只要处理回发的控件具有 IPostbakcEventHandler 接口,就可以处理回发。
本文介绍了一个使用ASP.NET WebForm结合IPostBackEventHandler接口实现客户端与服务器交互的例子。通过一个简单的按钮点击事件,展示了如何在服务器端处理前端触发的事件,并通过JavaScript在前端展示确认对话框,根据用户的反馈进行相应的操作。
482

被折叠的 条评论
为什么被折叠?



