0

3言語でサイトを作成しています。いくつかの Web コンテンツをボックスに表示し、「ルック アンド フィール/高度なスタイリング」を使用して境界線を提供します。ポートレットのタイトルは、ポートレットのルック アンド フィールで定義されます。

1 つの言語のテキストがない場合は、ボックスを非表示にしたいと考えています。

誰かが私たちを助けることができますか?

前もって感謝します、

s

4

2 に答える 2

0

この質問は、探しているものに非常に近いと思います(要素サーバー側を非表示にしたい場合を除く)。

AUI に変換すると(jQuery ではなく Liferay で使用できるため)、答えは次のようになります (簡単なデモ コードを含む)。

 <div style="border:5px solid blue"></div>
 <div style="border:1px solid red">
    This is not empty
 </div>
 <script>
   AUI().use(function(A){
     A.all("div:empty").hide();
   });
 </script>

より洗練されたサーバー側のオプションは、構造とテンプレートを作成し、Velocity を使用して条件付きロジック (HTML 生成など) を実行することです。これにより、空のコンテンツがマークアップを生成することさえありません (表示されていません。あなたが好むオプション、そして1つの解決策がすでにそこにあります)

于 2012-08-22T19:19:23.440 に答える
0

この記事が現在のユーザーの言語と競合していないときに WebContent-Portlet 全体を非表示にしたい場合はhtml/portlet/journal_content/view.jsp、Liferay-Hook でオーバーライドできます。liferay ドキュメントで jsp オーバーライドのチュートリアルを見つけることができます: http://www.liferay.com/documentation/liferay-portal/6.1/development/-/ai/overriding-aj-4

ps: JournalArticle による言語の存在を証明するには、LanguageUtil クラスを使用できます。

于 2012-08-23T20:05:34.040 に答える