我在用history.pushState
在我的页面上进行 AJAX 调用后,将一些参数附加到当前页面 URL。现在,在基于用户操作的同一页面上,我想使用相同或附加的参数集再次更新页面 URL。所以我的代码如下所示:
var pageUrl = window.location.href + "?" + queryString;
window.history.pushState('','',pageUrl);
queryString 是我的查询参数列表。
- 例如,我的默认页面 URL:http://sample.com/ http://sample.com/
- 在同一页面上第一次 AJAX 调用后 URL 应该是:
- 在同一页面上进行第二次 AJAX 调用后,URL 可以是:
但是通过上面的代码,我的参数被附加到带有参数的 URL 中,在第二次 AJAX 调用后它们看起来如下所示:
因此,参数在 URL 中出现两次,在推送到历史记录之前是否有任何方法可以替换 URL 中的参数,或者有其他更好的方法可以在 javascript(jquery) 中实现此目的?
我认为你需要的是删除window.location.href
然后离开'?' +
.
var pageUrl = '?' + queryString;
window.history.pushState('', '', pageUrl);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)