2016-07-04 20 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関数はまだ実行されています。 –

関連する問題