History API와 함께 Wicket 7.x를 사용하고 있습니다. 현재 "onpopstate"에 대해 AjaxEventBehavior를 연결하려고합니다. 내가 history.pushState 할 때마다 객체를 추가하는 코드가 있는데, 내 문제는 Java 측에서 onEvent를 사용하여이 추가 정보에 액세스 할 수 없다는 것입니다.History API가있는 Wick AjaxEventBehavior
샘플 pushState :
target.appendJavaScript("history.pushState({query: '" +
searchResults.getQueryString() + "'}, null, window.location.pathname);");
EventBehavior :
this.getPage().add(new AjaxEventBehavior("onpopstate")
{
@Override
protected void onEvent(AjaxRequestTarget target)
{
//code to get query defined in pushState
}
});
updateAjaxAttributes는 페이지가 렌더링 될 때 만 호출되기 때문에 해결책이 아니다. popstate가 호출 될 때이 여분의 데이터를 보내야합니다.
안녕하세요, 팁 주셔서 감사합니다. 그것은 나를 올바른 길로 인도했습니다! 내가 제안한대로 getDynamicExtraParameters를 사용하고 있습니다. 내가 직면 한 유일한 문제는 추가 매개 변수가 추가 될 때 발생합니다. 정확한 정보를 검색하기에는 이벤트가 너무 일찍 발생합니다. 나중에 실행을 연기 할 수있는 방법이 있습니까? getDynamicExtraParameters에 전달하는 현재 값은 "return { 'query': attrs.event.originalEvent.state.query}"입니다. – Greg
문제점에 대한 해결책을 찾았습니다. History API를 오용했습니다. 위대한 답변 주셔서 감사합니다! – Greg