Primefaces columnToggler从复选框列表中删除项目

时间:2017-11-02 15:31:06

标签: java jsf primefaces jsf-2

我使用Primefaces columnToggler动态隐藏/显示数据表中的列。这是按预期工作的,但是我想从切换器清单中删除项目,因此用户无法检查/取消选中它们。

相关代码:

按钮和columnToggler

<p:commandButton id="toggler" 
                 type="button" 
                 value="Columns" 
                 title="Show/Hide columns"/>
<p:columnToggler datasource="my_datatable" 
                 trigger="toggler" />

的dataTable

 <p:dataTable value="#{bean.foobars}" var="fb" 
              id="my_datatable"> ...
要显示的

列(按预期工作)

 <p:column headerText="Data One" >
      <h:outputText value="#{fb.data1}"/>
 </p:column>
要从columnToggler核对清单中隐藏的

列(我该怎么做?)

 <p:column headerText="Always Available" >
      <h:outputText value="#{fb.mustSeeField}"/>
 </p:column>

我希望在p:columnToggler上找到一个属性来锁定&#39;或者&#39;永远在&#39;字段,或可能是p:column上的属性,以从columnToggler核对表中删除它。不幸的是,我不确定如何做到这一点,或者它是否可行。思考?解决方案?谢谢!

1 个答案:

答案 0 :(得分:1)

PrimeFaces在toggleable上有一个p:column属性,如第110页的PrimeFaces 6.1文档中所示。所以

<p:column headerText="Always Available" toggleable="false">
   <h:outputText value="#{fb.mustSeeField}"/>
</p:column>

应该做的伎俩