gpt4 book ai didi

javascript - 单击带有 target=_blank 的 LinkBut​​ton 后,如何防止回发在新窗口中打开?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:48:28 33 4
gpt4 key购买 nike

总结:我有一个 GridView,其 TemplateField 仅包含一个 ASP.NET LinkBut​​ton。我的 LinkBut​​ton 看起来像这样:

<asp:LinkButton ID="lbDoc" runat="server" OnClientClick="document.forms[0].target ='_blank';" OnCommand="ProcessRequest" Text='<%# Eval("Title").ToString() %>' CommandArgument='<%# Eval("ID").ToString() %>' />

注意控件的 CommandArgument 和 OnCommand 属性。每个按钮都需要根据 CommandArgument 执行一些服务器端处理,并最终重定向并在新窗口中显示 PDF。重要提示:我不只是链接到 PDF URL,所以我不能使用超链接控件或简单的 anchor 标记。服务器端处理是关键和必需的。

问题:在运行时,一旦用户单击其中一个 LinkBut​​ton,PDF 就会根据需要在新窗口中加载,但是之后的所有回传也会在新浏览器中加载选项卡/窗口。我有 DropDownLists(使用 AutoPostback)重新查询并重新绑定(bind)我的 GridView - 如果用户在单击其中一个 LinkBut​​ton 后在这些 DropDownLists 中选择了不同的过滤器选项,结果将回传到新的浏览器选项卡/窗口中。 这就是问题所在 - 用户最终会看到一堆乱七八糟的标签页/窗口。

我尝试过的 用户 Pow-Ian 描述了同样的问题 here ,但建议的 Javascript 解决方案对我不起作用。我试过像 this 这样的纯 JavaScript 解决方案,但它也不起作用。它会在生成的标签上呈现 target='_blank',但出于某种原因,它不会在新的浏览器选项卡中处理链接。

有什么建议吗?

最佳答案

添加以下代码以防止回发。

lbDoc.Attributes.Add("onclick","return false;");

关于javascript - 单击带有 target=_blank 的 LinkBut​​ton 后,如何防止回发在新窗口中打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31037833/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com