首页 文章

单击浏览器后退按钮时,使用window.open打开的窗口将重新打开

提问于
浏览
0

我创建了一个asp.net Web应用程序,它在default.aspx中有一个linkbutton和超链接 . Hyperlink设置为navigationurl - “www.google.com” . Linkbutton使用javasript的window.open在新选项卡中打开相同的URL .

Default.aspx的

<asp:LinkButton ID="LinkButton1" runat="server" onclick="LinkButton1_Click">Data</asp:LinkButton>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="http://www.google.co.in">google</asp:HyperLink>

Default.aspx.cs

protected void LinkButton1_Click(object sender, EventArgs e)
    {
       string url = "http://www.google.com";
        ScriptManager.RegisterStartupScript(Page, typeof(Page), "OpenWindow", "window.open('" + url + "');", true);
    }

重现我的查询的步骤:1 . 单击LinkButton . 这会在新窗口/标签中打开Google . 2.单击“超链接” . 这导航到谷歌 . 3.单击浏览器后退按钮 . 这次浏览器导航回default.aspx,同时谷歌在新窗口/选项卡中打开 .
T希望这不会发生 .

3 回答

  • 0

    使用超链接按钮而不是链接按钮并使用 target="_blank"url ="www.google.com" 这将在新窗口中打开网址
    无需使用java脚本打开一个新的窗口....它也将解决您的问题

    <asp:HyperLink ID="HyperLink2" Target="_blank" NavigateUrl="http://www.google.co.in" runat="server"  >Data</asp:HyperLink>
    <asp:HyperLink ID="HyperLink1" Target="_self" runat="server" NavigateUrl="http://www.google.co.in">google</asp:HyperLink>
  • 0

    这是代码:将代码添加到您不希望用户返回的页面 .

    if(history.length> 0)history.go(1);

    在身体负荷上称它为

    基本上我增加浏览器历史记录 .

  • 0

    在head标签中添加此代码功能

    <script type="text/javascript">
            function myfun() {
    
                window.open("http://www.google.co.in");
                return false;
            }
        </script>
    

    在你的身体里

    <asp:LinkButton ID="LinkButton1" runat="server" OnClientClick="return myfun();">Data</asp:LinkButton>
    <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="http://www.google.co.in">google</asp:HyperLink>

    Note: 避免对服务器的任何请求,除非不需要,你也可以在 <a> 标签的帮助下保持 target="_blank"

相关问题