我的页面有一个奇怪的问题。我有一个名为“打印”的按钮。我希望报告应该出现在新标签中,所以我在按钮的onClientClick上编写了一些JavaScript。哪个很好,一点问题都没有。
但是,当用户再次回到原始页面时,问题现在就开始了,现在在这里,我有多个控件会导致回发。例如说一个下拉列表。因此,每当用户更改下拉项时,它都会导致回发,但这很好,但是每次在每个回发上打开一个新选项卡。
希望我很清楚...
有帮助吗?
这是一个代码:
<asp:Button ID="btnshow" runat="server" Text="Show" Font-Bold="true" ForeColor="Black" Width="90px" OnClick="btnshow_Click" OnClientClick ="document.forms[0].target = '_blank';"/>
答案 0 :(得分:2)
问题是document.forms[0].target='_blank'
是在表单上而不是单个按钮上设置目标,因此由任何控件触发的回发将在新标签页中打开。
您应该使用HyperLink控件而不是Button控件。 HyperLink控件具有Target属性,可让您指定链接的打开方式。
下面是example taken from the HyperLink documentation。这将使用target="_blank"
渲染anchor tag。
<asp:HyperLink ID="lnkPrint" NavigateUrl="http://www.microsoft.com" Text="Print" Target="_blank" runat="server" />