2016-07-04 2 views
0

다음 단추가 AjaxButton 인 마법사 (org.apache.wicket.extensions.wizard.Wizard)가 있습니다.Wicket : 마법사를 새로 고침/다시 그리기하는 방법을 제출 하시겠습니까?

다음 버튼의 onSubmit() 방법에 대해 장기 실행 작업을 수행하고 있습니다. 메소드를 종료하기 전에 ajaxTarget.appendJavascript(js)을 사용하고 있습니다. 여기에서 ajaxTargetAjaxRequestTarget이고 js은 평가할 JavaScript 스 니펫입니다.

내가 아는 한,이 스크립트는`onSubmit() '이 반환 될 때까지 실행되지 않으며 응답은 브라우저로 되돌려 보내집니다.

onSubmit이 완료되기를 기다리지 않고 즉시 JavaScript를 실행할 수 있습니까?

참고 : 나는 마법사가 새로 고침/다시 그려 때까지 개찰구-4

답변

1

이 스크립트가 실행되지 않습니다 사용하고 있습니다.

추가 된 모든 JavaScript 코드 단편은 AjaxRequest가 완료되면 실행됩니다. 마법사 자체는 업데이트 할 필요가 없습니다.

Ajax 요청에서 장기 실행 태스크를 실행하는 경우, 브라우저의 Ajax 요청은 결국 시간 종료로 실행됩니다. 장기 실행 작업을 별도의 스레드로 옮겨야합니다.

+0

답장을 보내 주셔서 감사합니다. AjaxRequest가 완료되면 모든 스 니펫이 실행된다는 것을 이해합니다. 그러나, 내 경우에는 onSubmit() 메서드 완료 전에 요청이 완료됩니다. 제안한 방법으로 구성 요소를 추가했지만 작동하지 않습니다. 나는 개찰구를 처음 사용하며 어리석은 짓을 할지도 모릅니다. 어떤 도움이라도 대단히 감사 할 것입니다. –

+0

그래서 #onSubmit()이 전혀 호출되지 않았습니까? 그런 다음 양식에 유효성 검증 오류가 있습니다. – svenmeier

+0

OnSubmit()이 호출되었습니다. 실행 1 분이 경과하면 Ajax 호출이 완료되지만 onSubmit 함수가 여전히 실행 중입니다. –

관련 문제