Primefaces dataTable列宽,配色方案,复选框功能

时间:2012-03-02 07:56:58

标签: jsf-2 primefaces facelets

我是关于primefaces和jsf的新手,并且在使用它时面临一些问题。

以下是我在jsf中使用的代码

<p:dataTable id="plazaId" var="plaza" value="#{coverageBean.plazaDataModel}" selection="#{coverageBean.selectedPlaza}" rowIndexVar="rowIndex" width="100%" border="0" cellspacing="0" cellpadding="0" >
            <p:column id="name" headerText="Select" selectionMode="multiple"
                    style="width:18px" />
            <p:column id="plazaName" headerText="Plaza's" style="width: 50%"  bgcolor="#dcdcdc">
                <h:outputText value="#{plaza.name}" bgcolor="#dcdcdc"></h:outputText>
            </p:column>
            <p:column id="plazaDirect" headerText="Directo" style="width: 10%"  bgcolor="#dcdcdc">
                <h:outputText value="#{plaza.direct}" bgcolor="#dcdcdc"></h:outputText>
            </p:column>
          </p:dataTable>

我检查了豆子和后端。他们都是正确的。

问题是:

  • 我喜欢在此表中使用百分比更改宽度。但它不起作用。
  • 我喜欢所有的行都是相同的颜色。但它显示出替代颜色(白色和蓝色)
  • 有没有办法制作简单html样式的复选框。但它有点花哨。

任何人都可以帮助解决任何问题。提前致谢

2 个答案:

答案 0 :(得分:3)

  

我喜欢在此表中使用百分比更改宽度。但它不起作用。

您的JSF视图存在语法问题。它们不是bgcolor的{​​{1}}属性,这是一个样式属性。

h:outputText

对于<h:outputText value="#{plaza.name}" headerText="Plazas" style="bgcolor: #dcdcdc;" /> 组件也是如此......

p:column

这也应该解决你的背景颜色问题。

  

有没有办法制作简单html风格的复选框。但它有点花哨。

这实际上很难做到。 <p:column id="plazaName" headerText="Plaza's" style="width: 50%; bgcolor: #dcdcdc;"> 实际上是一个带有javascript事件的样式div。在这个div中是一个隐藏的p:selectBooleanCheckbox,它作为返回的表单元素存在。如果不修改我知道的javascript和样式表,你就无法做到这一点。

答案 1 :(得分:2)

  1. 截至今天,这是不可能的。请参阅http://code.google.com/p/primefaces/issues/detail?id=2801

  2. 这与造型有关。根据需要定义样式。

  3. 这与造型有关。根据需要定义样式。