是否有可能有一个正常的链接指向当前位置?
我目前找到了2个解决方案,但其中一个包括JavaScript,在另一个你必须知道页面的绝对路径:
<a href="#" onclick="window.location.reload(true);">1</a>
<a href="/foobar/">2</a>
<a href="#">3 (of course not working)</a>
有没有办法做到这一点,而不使用JavaScript或知道绝对路径?
是否有可能有一个正常的链接指向当前位置?
我目前找到了2个解决方案,但其中一个包括JavaScript,在另一个你必须知道页面的绝对路径:
<a href="#" onclick="window.location.reload(true);">1</a>
<a href="/foobar/">2</a>
<a href="#">3 (of course not working)</a>
有没有办法做到这一点,而不使用JavaScript或知道绝对路径?
当前回答
还有一个解决方案
<a href="javascript:history.go(0)">Reload</a>
其他回答
您可以使用表单对相同的URL进行POST。
<form method="POST" name="refresh" id="refresh">
<input type="submit" value="Refresh" />
</form>
这为您提供了一个刷新当前页面的按钮。这有点烦人,因为如果用户按下浏览器刷新按钮,他们会得到一个是否要重新提交表单的消息。
两个选择:
<a href="https:">link</a>
<a href="">link</a>
在这两种情况下,浏览器将相对于当前URL解析链接,导致当前URL排除了#片段。
注:
https:如果您使用的是https协议(匹配任何协议) 对于其他人来说,使用空URL可能是一个错误,https:可能更明确。 这不会重放POST请求。
不幸的是,只有HTML没有全局的方法来做到这一点。你可以尝试做<a href="">test</a>,但它只适用于某些浏览器。
<a href="">Refresh!</a>
保留href=""为空,它将刷新页面。 如果使用表单传递一些信息,也可以工作。
如果你正在使用php/smarty模板,你可以这样做:
<a href="{{$smarty.server.REQUEST_URI}}{if $smarty.server.REQUEST_URI|strstr:"?"}&{else}?{/if}newItem=1">Add New Item</a>