【问题标题】:how to close current webform after display messagebox显示消息框后如何关闭当前的网络表单
【发布时间】:2015-05-13 02:43:51
【问题描述】:

我使用下面的代码打开一个消息框:

protected void btnUpdate_Click(object sender, EventArgs e)
        {
            ScriptManager.RegisterStartupScript(this, this.GetType(), "Messagebox", "alert('Record Updated successfully.Note: This tab is now getting close');", true);

        }

点击该消息框的确定按钮后如何关闭当前页面?

【问题讨论】:

  • 我使用网络表单而不是窗口表单..
  • @GravCude,不幸的是,他们说网络表单不能赢得表单,所以 .aspx 并且这不起作用
  • 我的意思是当前浏览器标签...
  • 对不起,也许我应该详细说明。 window.close() 是一个 Javascript 函数,用于关闭当前窗口。

标签: c# asp.net webforms


【解决方案1】:

试试这个,

string message = "alert('Your Approval Has been Saved Success');self.close();"; ScriptManager.RegisterClientScriptBlock((sender as Control), this.GetType(), "alert", message, true);

【讨论】:

    【解决方案2】:

    使用 window.open() 将当前页面作为弹出窗口打开,然后在页面中编写一个 Javascript 函数,例如

    <script>
    function confirmAndClose()
    {
        var conf = confirm("Confirm to close");
        if (conf == true) {
              window.close();
                          } 
    }
    </script>
    

    然后将您的服务器端代码更改为

    ScriptManager.RegisterClientScriptBlock(this, "script","confirmAndClose()");
    

    【讨论】:

    • 抛出错误“RegisterClientScriptBlock”方法没有重载需要 3 个参数
    • 对不起,应该是 Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "JSScript", "confirmAndClose()")
    【解决方案3】:

    在网络表单中,您无法关闭页面,您需要做的是将页面重定向到另一个页面,如果您在警报之后添加重定向,它应该会在警报关闭时发生

    如果您不知道如何重定向页面,那么这可能会有所帮助 aspx page to redirect to a new page 但是网络表单是我自己仍在学习的东西

    【讨论】:

      猜你喜欢
      • 2018-01-22
      • 2012-08-09
      • 1970-01-01
      • 2012-09-07
      • 1970-01-01
      • 2016-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多