在Apache Wicket中有没有办法让AJAX调用改变当前页面的URL而不重定向或重新加载页面?使用wicket通过AJAX更改网址
例如,假设我们是在网址:
我想,当我点击一个链接AJAX,执行一些动作,和URL的变化,说:
localhost:8080/otherUrl
没有重定向,只是改变浏览器中显示的网址。 这甚至可能吗?
谢谢!
Manuel
在Apache Wicket中有没有办法让AJAX调用改变当前页面的URL而不重定向或重新加载页面?使用wicket通过AJAX更改网址
例如,假设我们是在网址:
我想,当我点击一个链接AJAX,执行一些动作,和URL的变化,说:
localhost:8080/otherUrl
没有重定向,只是改变浏览器中显示的网址。 这甚至可能吗?
谢谢!
Manuel
您可以用JavaScript更改URL的唯一部分是散
你可以改变localhost:8080/#/someUrl
到localhost:8080/#/otherUrl
做到这一点与window.location.hash
下面是一个Flash网站的例子,它使用这个概念来允许深层链接URL:http://www.2advanced.com
你可以在地址栏中更改网址,就像@ martin-g在他的答案中所说的可以用历史API实现的那样 – spuas
这一行代码如下:window.history.pushState(“ “,”“,url); 我更感兴趣如何强制http链接使用新的URL而不是旧的参数。 – karate
你是否看到这个问题的日期@AzatMartirosyan?那么HTML5并未在生产中使用。 – AlienWebguy
不,它不是。如果您在浏览器中更改位置,则会向该URL发出新的请求。
(你做到这一点与window.location.href = newUrl
,但页面重新加载)
其实你可以! 但这根本与Wicket无关。 这是HTML5中新的历史API所关注的内容。 只需在Google中搜索“html5历史API示例”即可享受。
有助于使这种功能发生,投票(或贡献!)如果你想想看https://issues.apache.org/jira/browse/WICKET-5290
,这将是一个巨大的安全漏洞,如果浏览器允许这样的事。 – biziclop
嘿嘿,你是对的... –