すべてのドキュメントが Lotus Notes クライアントによって作成されたデータベースがあります。ドキュメントには、すべてのタブにテキストと添付ファイルを含むタブ付きテーブルを含むリッチ テキスト フィールドが含まれます。
ここで、XPages を使用してドキュメントを表示したいと考えています。ただし、タブ付きの表は XPages では表示されません。
XPages でタブ付きテーブルを含むリッチテキストフィールドを表示するにはどうすればよいですか?
答えはあなたが望むほど簡単ではなく、いくつかの魔法が含まれています。いくつかの可動部分があります。1 つ目は、RTF-HTML 変換の品質です。ベンに電話することを強くお勧めします。彼がタブ付きのテーブル (野獣です) を処理しない場合、解決策を得る手順は次のとおりです (Javascript の力があなたに強いことを願っています)。
テーブルの処理とレンダリングに慣れてください。これを行うには、ブラウザで RichText フィールドを単独で開きます。トリックは、カールによって文書化されている ?OpenField コマンドです。
その HTML では、さまざまなタブをクリックしてそのコンテンツを表示し、URL とソースを見て正確な構文を確認できます (AFAIK は文書化されていないか、文書が十分に隠されています)。
ここまでで、タブ付きのテーブルを HTML マークアップで識別する方法がわかったはずです。Dojo セレクターまたは JQuery を構築してみてください (あなたの毒が何であれ)。
RichText フィールドなしでページを表示しますが、コンテンツを表示する場所にプレースホルダーを配置<div id="RTPlaceholder" />
します (またはそこに dijit パネルを配置します)。
Ajax 呼び出しを使用し?OpenField
てコンテンツを取得します。クエリ式を使用して、タブ付きのテーブルをチェックします。テーブルがない場合は、コンテンツをレンダリングするだけです
タブ付きテーブルが見つかった場合は、dijit タブ付きテーブル (または選択した同等の UI フレームワーク) を作成し、タブごとに 1 つの呼び出しを行ってそれらを埋めます。いくつかの巧妙なクエリが必要です (周囲のテーブルは必要なく、タブ ラベルとコンテンツのみが必要です)。
それが大まかな方向性です。ステップ 1: ベンと少しおしゃべり。いつものように、悪魔は細部に宿るので、勇気が必要です。
記念品:
RichText > HTML => false;
HTML > RichText => false;
HMTL != RichText => true;
それがどうなるか教えてください!