将参数添加到网址而不刷新

时间:2017-06-22 13:33:01

标签: javascript jquery

我想在不刷新页面的情况下向url添加参数。我使用了history.pushStatehistory.replaceState。我在javascript中对函数进行了调试,当我调试history.pushState时,它会替换url,但之后它再次更改为上一个。

我想要的是,例如下面是我的网址

.../?id=1

现在我将点击我的一个过滤器,网址必须如下

.../?id=1,2

然后我会点击Search按钮来应用过滤器。什么应该是最佳做法?

3 个答案:

答案 0 :(得分:0)

这是一个很好的例子:

  

https://css-tricks.com/snippets/javascript/get-url-and-url-parts-in-javascript/

您可以在过滤器命令中使用,例如:onchange, onclick等,以便即时修改网址

答案 1 :(得分:0)

您可以使用以下代码添加参数而无需刷新:

window.history.replaceState(null, null, "?param1=value");

答案 2 :(得分:-2)

最好在应用过滤器之前不要更改您的网址。 将过滤器参数保存在某个对象中,并在用户单击提交后更改URL