如何在按钮点击事件中打开新的浏览器窗口

本文关键字:窗口 浏览器 事件 按钮 | 更新日期: 2023-09-27 18:22:01

如何在C#ASP.NET中打开按钮单击事件的新浏览器窗口?

请分享任何例子。

我正在执行以下代码。请告诉我哪里出了问题。

btn_Click()
{
    if(condition==true)
    {
        this.Page.ClientScript.RegisterStartupScript(
            this.GetType(),
            "page_index_script2", 
            "openNewWindow();", 
            true
        );
    }
}

JavaScript函数是

function openNewWindow()
{
    alert('HI');
    window.open('http://www.stackoverflow.com');  
}

当我运行javascript函数Alert的代码时,它可以工作,但新窗口并没有打开。

如何在按钮点击事件中打开新的浏览器窗口

您可以使用这样的代码,您可以根据需要调整高度和宽度

    protected void button_Click(object sender, EventArgs e)
    {
        // open a pop up window at the center of the page.
        ScriptManager.RegisterStartupScript(this, typeof(string), "OPEN_WINDOW", "var Mleft = (screen.width/2)-(760/2);var Mtop = (screen.height/2)-(700/2);window.open( 'your_page.aspx', null, 'height=700,width=760,status=yes,toolbar=no,scrollbars=yes,menubar=no,location=no,top=''+Mtop+'', left=''+Mleft+''' );", true);
    }

这一切都可以在客户端上使用OnClientClick[MSDN]事件处理程序和window.open[MDN]来完成:

<asp:Button 
     runat="server" 
     OnClientClick="window.open('http://www.stackoverflow.com'); return false;">
     Open a new window!
</asp:Button>

Response.Write('…打开窗口的javascript…')

http://www.aspspider.com/qa/Question2714.aspx

或者写入响应流:

Response.Write("<script>");
Response.Write("window.open('page.html','_blank')");
Response.Write("</script>");