Primefaces DataTable使用selectMenuCheckbox显示/隐藏列

时间:2014-01-08 18:16:04

标签: javascript jquery jsf primefaces datatable

我有一个primefaces(3.5)数据表,我想用selectMenuCheckbox(sMCB)显示/隐藏列 - 每列都列在sMCb中。 sMCb有一个托管bean,用于存储其值,表列的渲染字段设置为一个方法,用于查看是否在复选框中选中了列。

sMCb有一个“onChange”参数,我在其中使用基本的javascript调用“tableName.update()”来告诉它更新。 1)它不起作用,2)我不确定它是否正确的方式让表重新呈现或我是否应该做其他事情。

有人可以使用数据表,selectMenuCheckbox建议一种方法,并在每个复选框都更改时显示/隐藏列。

之前我曾经使用过JSF / Primefaces,但我对javascript / jquery / etc是个新手。

感谢。

1 个答案:

答案 0 :(得分:0)

就像你说的那样,selectMenuCheckBox工作服务器端,render属性也是如此。一个纯粹的客户端JavaScript方法将无法正常工作。

为了更新列,我希望在单击复选框的情况下重新呈现表格。

在不知道您的直接xhtml(并且亲自来自richfaces前面)的情况下,该复选框可能看起来像(未经测试)

<h:selectMenuCheckBox value="#{managedBean.firstColumnChecked}">
    <f:ajax event="change" render="yourDataTableIdHere" />
</h:selectMenuCheckBox>

希望它有所帮助...