Html 链接到当前页面,不带查询字符串

Html 链接到当前页面,不带查询字符串,html,Html,我知道做链接有很多技巧,例如在添加查询字符串后将链接到当前页面。在删除查询字符串后,有没有一种方法可以链接回当前页面,而不只是键入文件名 例如,在页面foo.php?q=3,我想链接到foo.php。有没有捷径类型的方法可以做到这一点?该文件将被重命名几次,所以我不想键入一堆链接,然后再编辑它们 编辑: 尽管这些都是PHP文件,但我试图避免针对这个特定问题使用服务器端解决方案 href="?" 这不完全是你想要的-最后还有一个问号-但是功能上是等效的。你想要一个与$\u SERVER['PHP

我知道做链接有很多技巧,例如
在添加查询字符串后将链接到当前页面。在删除查询字符串后,有没有一种方法可以链接回当前页面,而不只是键入文件名

例如,在页面
foo.php?q=3
,我想链接到
foo.php
。有没有捷径类型的方法可以做到这一点?该文件将被重命名几次,所以我不想键入一堆链接,然后再编辑它们

编辑: 尽管这些都是PHP文件,但我试图避免针对这个特定问题使用服务器端解决方案

href="?"

这不完全是你想要的-最后还有一个问号-但是功能上是等效的。

你想要一个与
$\u SERVER['PHP\u SELF']
等效的客户端吗?在扩展名之后总是链接到文件而没有额外内容的东西

我不确定这是否适用于所有浏览器,但在Firefox 3.5中效果很好:

<a href="">Foo</a>

您可以链接到当前页面:

<a href="#">blah</a>

您可以使用
获得更详细的答案。

我知道这已经过去了将近10年,但另一种在客户端实现的方法是使用Javascript,例如

<a href="javascript:window.location.href=/^[^?]+/.exec(window.location.href)[0]">Anchor</a>


不太漂亮,但单击时确实会产生一个干净的URL。

这不会在所有浏览器中向服务器执行新请求。我认为它不会在任何浏览器中执行新请求。还要记住,这会滚动到页面顶部-这一事实几乎被普遍遗忘。
不幸的是,它在IE中不起作用。From:-如果将HREF指定为空值(HREF=”“或HREF=),则执行链接可能会显示包含当前文档的目录,或者可能会生成错误,具体取决于文档和服务器环境中的其他元素。不幸的是,这不适用于无扩展URL。这是我在遇到这个问题之前一直使用的技术。尽管这很旧,但我仍在进行升级和评论,因为这仍然是相关的,而且这是唯一一种在扩展和无扩展URL上都有效的非服务器端方法。@trnelson多亏了Javascript,这不是唯一的客户端方法,请看我的答案:。附后。对于任何想到锚的人……显然,社区非常不喜欢锚,任何将锚发布为解决方案的人都将被投进角括号的深渊!我知道有一种方法可以通过
javascript:
href实现这一点,但我不知道如何做到如此干净。