我创建了一个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><br />
<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,同时google在新窗口/标签页面中打开 我希望这不会发生。
答案 0 :(得分:0)
这是代码:将代码添加到您不希望用户返回的页面。
如果(history.length大于0) history.go(1);
在身体负荷上调用
基本上我增加浏览器历史记录。
答案 1 :(得分:0)
在头标记中添加此代码功能
<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><br />
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="http://www.google.co.in">google</asp:HyperLink>
注意:避免向服务器发出任何请求,除非不需要,您也可以在<a>
标记的帮助下保留target="_blank"
答案 2 :(得分: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><br />
<asp:HyperLink ID="HyperLink1" Target="_self" runat="server" NavigateUrl="http://www.google.co.in">google</asp:HyperLink>