• c#点击服务器端按钮实现confirm功能


    说一下我接触到的两种按钮实现confirm功能

    普通服务器button控件:

    <asp:Button ID="Button1" runat="server" OnClientClick="if(!confirm('Submit form?')){return false;}" OnClick="Button1_Click" Text="Button" />

    在元件上註冊一個OnClientClick的事件,在submit前先讓使用者確認,確認後就submit,否則就不submit。

    GridView中的command按钮:

            protected void gvProject_RowCommand(object sender, GridViewCommandEventArgs e)
            {
                try
                {
                    string[] parameters = e.CommandArgument.ToString().Split('|');
                    int rowIndex = Convert.ToInt32(parameters[0]);
                    bool confirmResult = false;//弹出框确认激活结果,首次进入该方法为false
                    if (parameters.Length == 2)
                    {
                        bool.TryParse(parameters[1], out confirmResult);
                    }
                    if (!confirmResult)//首次进入该方法或确认结果为否
                    {
                        //激活前请用户再次确认
                        string commandArgument = e.CommandArgument.ToString() + "|true";
                        string commandProjectName = this.gvProject.Rows[rowIndex].Cells[0].Text;
                        string scriptString = @"
                                                <script>
                                                    if(window.confirm('你确认要激活该项目{" + commandProjectName + @"}吗?'))
                                                    {
                                                        __doPostBack('gvProject','$" + commandArgument + @"')
                                                    }
                                                 </script>";
                        ClientScript.RegisterClientScriptBlock(this.GetType(), "billConfirmAlert", scriptString);
                    }
                    else//第二次进入该方法并且确认激活
                    {
                        //获取DataKeys中的projectID
                        int projectID = Convert.ToInt32(this.gvProject.DataKeys[rowIndex].Values["ProjectID"]);
                        projectController.ActivateProject(projectID, "");
                        //激活完毕后刷新列表
                        ShowNotActivatedProject();
                    }
                }
                catch (Exception ex)
                {
                    this.lblResult.Text = string.Format("激活操作出错:{0}", ex.Message);
                }
            }

    注释很详细大家自己看吧。

  • 相关阅读:
    VC编程规范
    socket编程FTP客户端demo
    Win7下微软拼音等中文输入法默认英文标点解决办法
    <转载>一般筛法和快速线性筛法求素数
    聚类算法的设计与实现
    面试题集锦_7
    面试题集锦_8
    中点画线算法程序
    HTML解析类 ,让你不使用正则也能轻松获取HTML相关元素 C# .NET
    .NET C# 使用S22.Imap.dll接收邮件 并且指定收取的文件夹的未读邮件,并且更改未读准态
  • 原文地址:https://www.cnblogs.com/jiangfei5945/p/2899834.html
Copyright © 2020-2023  润新知