如何隐藏WebContent portlet中的空部分

时间:2012-08-22 12:46:27

标签: liferay portlet

我们正在以3种语言创建网站。我们在框中显示一些Web内容,使用“外观和高级样式”来提供边框。 portlet标题在portlet的外观中定义。

如果没有一种语言的文字,我们希望不显示这些框。

有人可以帮助我们吗?

提前致谢,

取值

2 个答案:

答案 0 :(得分:0)

我相信this question非常接近你正在寻找的东西(除非你想隐藏元素服务器端)。

Translated to AUI(因为它在Liferay而不是jQuery中可用)答案与此类似(包含简单的演示代码):

 <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 :(得分:0)

如果您想在本文未与当前用户的语言竞争时隐藏整个WebContent-Portlet,则可以使用Liferay-Hook覆盖html/portlet/journal_content/view.jsp。您可以在liferay文档中找到jsp覆盖的教程:http://www.liferay.com/documentation/liferay-portal/6.1/development/-/ai/overriding-a-j-4

ps:要通过JournalArticle证明语言的存在,您可以使用LanguageUtil类。