2016-11-04 9 views
0

ロードに時間がかかるXpageがあります。そこでクライアントは私にローディングインジケータを要求します。 XSP.startAjaxLoading()を検索したところ、カスタムコントロールのonClientLoadイベントに入れました。 しかし、今どこにローディング画面を消すためにXSP.endAjaxLoading()を置くべきか分かりません。 私はafterRenderResponseとbeforeRenderResponse:view.postScript("XSP.endAjaxLoading()")で使ってみましたが、このコマンドはCSJSですが、動作しません。どこでXSP.endAjaxLoading()を使うべきですか?

ありがとうございます。

+0

XSPをラップすると動作しますか? XSP.addOnLoad()メソッドのendAjaxLoading() –

+0

答えをあなたの解決策として教えてください –

答えて

0

私は解決策としてこの回答を使用:https://stackoverflow.com/a/35481981/5339322
私は何を私はよく考えて作られたことは、私はこれを使用して遅らせるために私のXPagesをやっているかを知る必要があるということです、数日前にそれを見てきました。私はいくつかのテストを実行し、何が発見され、それはafterRestoreViewイベントのメソッドへの呼び出しであったので、それをonClientLoadイベントに移行し、上記の答えでソリューションを使用しました。 しかし、私はそれに注意しなければならないのではないかと心配しています。だから、XPagesの別の出来事を遅らせるコードをいくつか追加した場合、私は何か別のものを見つけ出すでしょう。

ありがとうございました。

0

私はあなたをonCompleteイベントに入れたいと思います。それは見つけるのが難しいかもしれません。通常は、アウトラインコントロールを使用して検索する必要があります。

NotesIn9のビデオデモがありますが、その例があります。

http://www.notesin9.com/2016/02/19/notesin9-188-adding-a-please-wait-to-xpages/?unique=http%3A//www.notesin9.com/2016/02/19/notesin9-188-adding-a-please-wait-to-xpages/

0

あなたの試み(view.postscript)部分/完全なアップデートでのみ動作し、ページの読み込みのために動作しません。

onClientLoadを使用しました。ページの読み込みが完了すると実行されます。私はしばらくしてからajaxアニメーションを取得し、それは停止しないと思う。

アニメーションを開始し、それをオフにする気にしない、非常に単純なXPageプリロード画面を作成する必要があります。 onClientLoadのイベントは、遅いXPageにリダイレクトされます。それはアニメーションを破棄します。

0

スタンバイダイアログXSnippet https://openntf.org/XSnippets.nsf/snippet.xsp?id=standby-dialog-custom-controlを使用することを強くお勧めします。すべてのXPageアプリケーションで標準として使用しています。

+0

これは部分的なリフレッシュにのみ適していますか?それは時間がかかる場合、初期ページの負荷に触れません。 –

+0

申し訳ありませんが、あなたは正しいです。私は最初のページの読み込みのための解決策があるとは思わない。すべてのコンポーネントはサーバー上で処理する必要があります。それがパフォーマンスに及ぼす影響がある場合は、必要に応じてDynamic Content ControlまたはLoadedプロパティを使用することを検討する必要があります。それ以外の場合は、ページ上のコンテンツの量を減らすか、一部のデータを事前に計算する必要があります。サーバー上で処理されると、onClientLoadコードを含むすべてのHTMLがブラウザに送信されます。この解決策は、XPageに固有のものではなく、一般的なWeb開発です。 –

+0

私はNotesIn9ビデオで解決したと思います。ページが読み込まれ、最初の読み込み後に長時間実行されているプロセスの部分的な更新が行われるように、それを偽造します。 –

関連する問題