六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 20|回复: 0

Liferay小技巧

[复制链接]

升级  47.33%

31

主题

31

主题

31

主题

秀才

Rank: 2

积分
121
 楼主| 发表于 2013-2-4 19:56:14 | 显示全部楼层 |阅读模式
Liferay页面中如何引入Tab页?

liferay中tab1为一级tab,tabs2为二级标签,引入时需要使用一个liferay的taglib:liferay-ui:tabs,比如:
<liferay-ui:tabs names="articles-referenced,articles-could-be-referenced" url="<%= portletURL.toString() %>" param="tabs2" />
其中,names中为资源文件中的资源名,逗号分割,但逗号前后都不能有多余空格。
tabs2是一个String.
String tabs2 = ParamUtil.getString(request, "tabs2", "articles-referenced")
至于如何实现点击Tab显示不同内容,可以通过:
<c:choose>
 <c:when test='<%= tabs2.equals("articles-referenced") %>'>
 ...
 </c:when>
</c:choose>
来确认。注意:此处是通过资源名articles-referenced,而不是实际的值来判断的。 smilingleo原创
关于Liferay中的RowChecker

在Liferay中,如果要生成一个带check box的列表table,需要使用RowChecker,通过searchContainer.setRowChecker(new RowChecker(renderResponse))来指定;
RowChecker其实就是将生成HTML <input name="your_portlet_name_rowIds" type="checkbox" ...>进行了封装,但是需要注意,rowIds的值是每行的primaryKey,而这个PrimaryKey是通过ResultRow的构造函数来实现的。smilingleo原创
如何在Liferay中引入你自己的Javascript?

一个比较笨的方法是在html/theme/里面查找所有的portal_normal.vm,然后在<head>标签下添加,
<script type="text/javascript" src="/html/js/jsgraphics.js"></script>
注意src需要用绝对路径。
一个更好的办法,具体就是在portal.properties中:javascript.files=\中引入,然后build就OK了
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表