我正在开发一个portlet来显示规则列表,供选择。
我想集中在我的数据库中选择的内容行(init.jsp
上加载的规则变量)。
我应该做些什么来聚焦/突出显示一行?
我应该对所有<c:when
使用<c:otherwhise
.jsp
:
我使用以下代码显示规则列表:
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<portlet:defineObjects />
<liferay-ui:search-container emptyResultsMessage="there-are-no-products" delta="5">
<liferay-ui:search-container-results>
<%
List<IRRule> tempResults = ActionUtil.getRules(renderRequest);
results = ListUtil.subList(tempResults, searchContainer.getStart(),
searchContainer.getEnd());
total = tempResults.size();
pageContext.setAttribute("results", results);
pageContext.setAttribute("total", total);
%>
</liferay-ui:search-container-results>
<liferay-ui:search-container-row
className="com.everis.oriol.inputrules.model.IRRule"
keyProperty="ruleId"
modelVar="rule">
<liferay-ui:search-container-column-text
name="ruleName"
property="ruleName"
/>
<liferay-ui:search-container-column-text
name="ruleDescription"
property="ruleDescription"
/>
<liferay-ui:search-container-column-jsp
path="/row.jsp"
align="right"
/>
</liferay-ui:search-container-row>
<liferay-ui:search-iterator />
</liferay-ui:search-container>
在init.jsp
文件中我有......
<%
long groupId = themeDisplay.getScopeGroupId();
List<IRSelect> rulesPas = IRSelectLocalServiceUtil.getRule(groupId);
String rules = rulesPas.get(0).getRuleName();
%>
我想要比较......
<liferay-ui:search-container-column-text
name="ruleName"
property="ruleName"
/>
...与
rules
感谢您的帮助
答案 0 :(得分:0)
我能想到的一种方法是设置bold
标记的<liferay-ui:search-container-row>
属性
如果元素的值为true
,则会将元素显示为粗体:
<liferay-ui:search-container-row
className="com.everis.oriol.inputrules.model.IRRule"
keyProperty="ruleId"
modelVar="rule"
bold="<%=rules.equals(rule.getRuleName()) %>">
...
</liferay-ui:search-container-row>
如果您想要更多选项来设置行的样式,可以为整行设置CSS类:
<liferay-ui:search-container-row
className="com.everis.oriol.inputrules.model.IRRule"
keyProperty="ruleId"
modelVar="rule">
<%
if (rules.equals(rule.getRuleName())) {
// here "row" is the ResultRow object, instance for each row
row.setClassName("my-custom-css-class");
}
%>
<liferay-ui:search-container-column-text
name="ruleName"
property="ruleName"
/>
...
</liferay-ui:search-container-row>
如果您希望只有那一行中的规则列文本应该以不同的方式显示,而不是整行:
<liferay-ui:search-container-column-text
name="ruleName"
property="ruleName"
cssClass="<%=rules.equals(rule.getRuleName()) ? \"my-custom-css-class\" : \"\" %>"
/>