我正在使用带有 History API 的 Wicket 7.x。我目前正在尝试为“onpopstate”连接一个 AjaxEventBehavior。每当我执行history.pushState 时,我都有添加对象的代码,我的问题是我无法使用onEvent 从Java 端访问这些额外信息。
示例推送状态:
target.appendJavaScript("history.pushState({query: '" +
searchResults.getQueryString() + "'}, null, window.location.pathname);");
事件行为:
this.getPage().add(new AjaxEventBehavior("onpopstate")
{
@Override
protected void onEvent(AjaxRequestTarget target)
{
//code to get query defined in pushState
}
});
updateAjaxAttributes 不是解决方案,因为它仅在呈现页面时调用。当调用 popstate 时,我需要发送这些额外的数据。