我有一个看起来像这样的网址
在页面上执行某些操作后,项目将使用项目名称保存到数据库中。现在我想替换像这样的网址
http://foo.com/Item/newItemName
我需要更新窗口状态,所以是否可以使用window.history.replaceState方法或类似的方法更新网址?
答案 0 :(得分:2)
您正在寻找的是pushState
功能。
查看以下文档:https://developer.mozilla.org/en-US/docs/Web/API/History_API
另外,请查看本教程:https://css-tricks.com/using-the-html5-history-api/
pushState
功能非常方便。
答案 1 :(得分:0)
应该可以做类似的事情:
history.pushState({}, null, newUrl);
newUrl
是新网址,应该替换当前网址。请注意,这只是HTML5。
答案 2 :(得分:0)
我会使用replaceState
,而不是pushState
,因为您不想在用户的浏览器历史记录中创建新条目。
history.replaceState(
'{ foo: "bar" }',
'Some new title',
'http://foo.com/Item/12345'
);