单击同一链接时如何停止多个链接

时间:2016-02-18 18:35:51

标签: javascript c# asp.net hyperlink tabs

我有一个带有超链接控件的数据网格,用户可以单击它,它将打开一个新选项卡,显示有关所选项目的信息。我的问题是,如果点击相同的项目3次,我的浏览器上会有3个新选项卡。

有没有办法在第一次点击链接时打开标签,只要它打开并且有人选择链接,它是否可以将焦点放在已创建的标签上而不是打开新标签?

超链接控件的目标设置为“_blank”。

我正在使用C#和Asp.net 4.5。

3 个答案:

答案 0 :(得分:1)

您可以在<asp:HyperLink NavigateUrl="https://www.google.com" Text="Go to Google" Target="SameWindow" runat="server"/> <asp:HyperLink NavigateUrl="http://stackoverflow.com" Text="Go to StackOverflow" Target="SameWindow" runat="server"/> 属性中指定名称:

<a href="http://www.google.com" target="SameWindow">Go to Google</a>
<br />
<a href="http://stackoverflow.com" target="SameWindow">Go to StackOverflow</a>

HTML示例:

window.open

这是(我相信)与使用javascript window.open函数传递窗口名称相同。命名窗口打开一次后,传入该名称的var openTarget = function() { console.log(this); var target = this.getAttribute("attr-target"); window.open(target, "ExampleName"); } var elems = document.querySelectorAll("button"); Array.prototype.forEach.call(elems, function(e) { e.addEventListener("click", openTarget); });的后续调用将在已经打开的窗口中加载新URL。

这是一个示例代码段。由于安全限制(CORS),您可能必须在完整的JSFiddle页面中运行代码段。

<button attr-target="https://www.google.com/">Open Google</button>
<button attr-target="http://stackoverflow.com/">Open StackOverflow</button>
{{1}}

答案 1 :(得分:0)

你可以借助这个simle代码

来做到这一点
<p onclick="window.open('www.sample.com','mywindow').focus()" >Visit Now</p>

答案 2 :(得分:0)

只需将目标设置为某个名称,如

<a href="http://google.com" target="anyname">a link</a>