ASP.NET WebForm弹出对话框 确定取消点击事件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Gary_888/article/details/78714370

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 接口,就可以处理回发。

猜你喜欢

转载自blog.csdn.net/Gary_888/article/details/78714370