在Apache Wicket中,有没有一种方法可以让 AJAX 调用改变当前页面的URL,而无需重定向或重新加载页面?例如,假设我们在URL中:
localhost:8080/someUrl
我想当我点击一个 AJAX 链接时,会执行一些操作,URL会更改为,比如:
localhost:8080/otherUrl
无需重定向,只需更改浏览器中显示的URL。这可能吗
nfs0ujit1#
其实你可以!但这和威克特一点关系都没有。这就是HTML5中新的历史API。只需在Google中搜索“html5历史API示例”即可享受。
mitkmikd2#
URL中唯一可以用JavaScript更改的部分是散列您可以将localhost:8080/#/someUrl更改为localhost:8080/#/otherUrl使用window.location.hash执行此操作下面是一个Flash站点的例子,它使用这个概念来允许深度链接URL:http://www.2advanced.com
localhost:8080/#/someUrl
localhost:8080/#/otherUrl
window.location.hash
7jmck4yq3#
帮助实现此功能,投票(或贡献!)对于https://issues.apache.org/jira/browse/WICKET-5290
3okqufwl4#
不,不是的。如果您在浏览器中更改了该位置,则会对该URL发出新请求。(You使用window.location.href = newUrl执行此操作,但页面会重新加载)
window.location.href = newUrl
4条答案
按热度按时间nfs0ujit1#
其实你可以!但这和威克特一点关系都没有。这就是HTML5中新的历史API。只需在Google中搜索“html5历史API示例”即可享受。
mitkmikd2#
URL中唯一可以用JavaScript更改的部分是散列
您可以将
localhost:8080/#/someUrl
更改为localhost:8080/#/otherUrl
使用
window.location.hash
执行此操作下面是一个Flash站点的例子,它使用这个概念来允许深度链接URL:http://www.2advanced.com
7jmck4yq3#
帮助实现此功能,投票(或贡献!)对于https://issues.apache.org/jira/browse/WICKET-5290
3okqufwl4#
不,不是的。如果您在浏览器中更改了该位置,则会对该URL发出新请求。
(You使用
window.location.href = newUrl
执行此操作,但页面会重新加载)