0

我有一个从 ebean 获取的隐藏属性。我如何将该颜色代码属性传递给 css 函数?

    <h:panelGrid id="testpanel"
       columns="#{message.no_of_columns}" rows="#{message.no_of_rows}" 
      styleClass="dynamicGrid">
     <c:forEach items="#{bLDashBoardAction.listBondLoc}" var="item">
      <h:panelGroup>                                                 <h:outputText value="#{item.rackTagCode}" />
   <h:hiddenInput value="#{item.colorEBean.colorCode};" />
                                            </h:panelGroup>
</c:forEach>
</h:panelGrid>

这是我的 css 属性,需要从 panelgrid 颜色代码分配背景

.dynamicGrid td
{
width: 50px;
height: 50px;
border: 4px solid gray;
    background:

}
4

2 回答 2

1

不要认为你可以从 JSF 传递到 css,你可以创建几个具有预定义背景颜色的类,比如.dynamicGridRed.dynamicGridYellow

并有条件地调用它们,其中styleClass="#{item.colorEBean.colorCode}" colorCode 可以返回dynamicGridReddynamicGridYellow

或类似的东西

styleClass="#{item.colorEBean.useRedCode?'dynamicGridRed':'dynamicGridYellow'}"

另一种选择是使用内联 css,例如:

style="width: 50px;height: 50px;border: 4px solid gray;background:#{item.colorEBean.colorCode}"

INMO,你最好不要试图操纵css的内容,只做一堆预定义的css类......

但我不是css pro,所以我可能错了

于 2012-07-03T05:16:20.150 回答
1

由于您受到奇怪设计的限制,最好的办法是直接将样式应用于单元格的内容。

<h:outputText value="#{item.rackTagCode}" style="display:block;color:#{item.colorEBean.colorCode};" />

display:block将使它跨越整个单元格。

于 2012-07-04T03:13:47.177 回答