我们正在以3种语言创建网站。我们在框中显示一些Web内容,使用“外观和高级样式”来提供边框。 portlet标题在portlet的外观中定义。
如果没有一种语言的文字,我们希望不显示这些框。
有人可以帮助我们吗?
提前致谢,
取值
答案 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类。