重用Primefaces对话框

时间:2013-05-27 09:14:08

标签: jsf primefaces dialog

我有一个Primefaces JSF视图myView.xhtml,其中包含一个表单(带有id'myformID')和datatable(带有id'myDataTableId')。我还有一个对话框(myDialog.xhtml)。我在myView.xhtml中包含myDialog.xhtml。当我们点击'myDialog.xhtml'中的commandButton时,它会在执行动作侦听器中指定的方法后更新数据表。我正在使用update =“:myFormId:myDataTableId”更新数据表,它工作正常。

但我想在不同的视图中使用相同的对话框。表单id和datatable id在该视图中是不同的。那么,我如何重用对话框并更新具有不同id的数据表(目前我通过复制代码创建了一个对话框并相应地更改了commandButton的update属性中的值)?

1 个答案:

答案 0 :(得分:1)

您可以使用ui:include示例传递参数:

<强> master.xhtml

<ui:include src="include.xhtml">
    <ui:param name="customId" value="4567" />
</ui:include>

<强> include.xhtml

<ui:composition>
    <p:dialog id="#{customId}" ...>
    </p:dialog>
</ui:composition>