当前,我的页面网址如下所示:
https://example.com/eg?page=2
有时,URL也可能像这样:
https://example.com/eg/?page=2
我想将用户重定向到同一页面,但没有查询字符串,因此单击链接时,您将转到:
https://example.com/eg
我尝试在this问题中建议的定位标记中使用以下href
:
<a href=".">To home</a>
单击链接时,当当前页面URL为https://example.com/eg/?page=2
时,它会像我一样删除查询字符串。但是,如果页面URL为https://example.com/eg?page=2
,则会带我到https://example.com
。
问题:是否可以使用某种类型的目录路径(例如,我可以在href中使用的url),以便上述两个URL始终删除查询字符串?我可以使用javascript,但如果没有可能的解决方案将是首选。
注意: ,因为我正在开发可位于不同环境中的小部件,所以无法将eg
硬编码到我的href
网址中,因此,eg
可能会发生变化。
答案 0 :(得分:1)
您可以使用
<a href="javascript:window.location.href=window.location.href.split('?')[0];">Home</a>
您也可以使用document.location
代替window.location
。但是不建议这样做。 See here
答案 1 :(得分:1)
将此脚本应用于您的a
标记。
<a href="javascript:document.location.href=document.location.href.split('?')[0];">Home</a>
答案 2 :(得分:1)
以?
开头的相对链接应仅修改查询字符串,因此您可以使用:
<a href="?">Home</a>
将您的示例网址定向到:
https://example.com/eg?
https://example.com/eg/?
在最终到达的网址中确实包含了?
,这可能不是您想要的,但是如果您不想使用Javascript,这是一个功能选项。