我使用的是History.js框架,我只使用replaceState方法。
我的问题是关于replaceState行为,因为它替换了所有的querystring。

History.replaceState(null, null, "?tab=2");

所以当我运行上面的代码时,所有的参数都会被删除,然后呢?添加tab=2:
www.yoursite.com/accounts?表=2
是否可以保持除tab=2之外的其他参数不变
www.yoursite.com/accounts?country=1&city=2&tab=2

最佳答案

不,你得自己建一个新的查询环。

function append(p) {
    return (location.search ? location.search+"&" : "?") + p; // + location.hash
}
history.replaceState(null, null, append("tab=2"));

07-28 06:44