如何在Django中打开新标签页的URL?

13
我需要使用render_to_response在新标签页上打开结果页面。
4个回答

20

谢谢,但我的控制在views.py中,我想将控制转移到一个新页面,并且它必须在新标签页中打开。 - Vivek S
必须在写出的模板中,在HTML中完成。 - Adam Vandenberg
1
不完全如此:您可以编写一个中间件来更改您的HTML,搜索A标签并添加target="_blank"。 - daigorocub
感谢您对服务器/客户端区分的说明。现在一切都变得清晰明了。 - Brendan Metcalfe
1
另外,不要忘记像这样使用 noopener<a href="http://example" target="_blank" rel="noopener">,如果你忘了,它会成为一个安全漏洞。 - Flimm
更多关于 "noopener" 的内容请参见:https://developer.mozilla.org/zh-CN/docs/Web/HTML/Link_types/noopener - djvg

9

大多数情况下,在新标签页加载页面可能会给用户带来真正的烦恼。然而有时仍然是必要的。如果您确实需要在新标签页中呈现POST结果,请将target="_blank"作为<form>的属性使用。


2
另外,不要忘记像这样使用 noopener<a href="http://example" target="_blank" rel="noopener">,如果你忘了,它会成为一个安全漏洞。 - Flimm
更多关于 "noopener" 的内容请参见:https://developer.mozilla.org/zh-CN/docs/Web/HTML/Link_types/noopener - djvg

0

当我在DTL中传递动态URL时,遇到了问题。我通过在href关闭后添加target="_blank"来解决它。

      <h3 class="card-title">
                        <i class="fas fa-bell fa-2x mr-1"></i>
                        <a href="{% url 'alerts' site=data.site.name  %}  " target ="_blank">Notifications </i></a>
                     </h3>

0

<a></a>带有target="_blank"的下面可以在新标签页中打开URL:

<a href="https://www.google.com/" target="_blank">Google</a>

而且,下面没有target="_blank"<a></a>可以在当前标签页中打开链接:
<a href="https://www.google.com/">Google</a>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接