更改URL后重新加载页面
问题描述:
我想在#后的URL中添加文本,然后重新加载页面。更改URL后重新加载页面
我做:
<a href="current_url+'#'+sample" onclick="location.reload();">Click Here</a>
,它是在谷歌浏览器工作正常,但在Firefox它重新加载页面,但该网址片段“#sample”是不存在的。这意味着它让我回到没有#字符串的同一页面上。但我确实需要它。
我也曾尝试:
$('a').click(function(){
location.reload(true); //even window.location.reload(true);
});
,但没有得到积极的结果。
我该怎么办?
答
基本上,你把当前的URL,即document.location.href
并添加你想要的文字:
<a href="javascript:void(0);" onclick="changeUrl(sample);">Click Here</a>
function changeUrl(text) {
document.location.href = document.location.href + "#" + text;
}
请注意,此解决方案不需要jQuery的。
答
通过添加锚标记的onclick(with window.location)中的链接来解决此问题。
<a href="javascript:void(0)" onclick="window.location='current_url+'#'+sample'; location.reload();">Click Here</a>
+0
这是正确的解决方案。谢谢! – tfont
为什么在添加哈希标记后需要重新加载页面? – cmorrissey
使用哈希重新加载页面听起来有点奇怪,因为哈希部分用于做相反的,防止重新加载,但仍然更改网址。你想做什么? – Shilly
在页面加载时,我检测到散列后的文本,并使用ajax将其发送给控制器,并相应地更改页面上的内容。 – Wolfack