我在做一些研究时发现了类似的问题,但没有一个真正解决了我的问题。
我有一个带有一些输入标准和一个提交按钮的表单。单击提交时,将在表单下方填充一个 primefaces 数据表,其中包含一些结果。我需要的是根据输入的数据显示不同的表格而不刷新整个页面。例如,如果用户在表单中输入 Person 作为值,则会显示 Person 表的结果。但是,如果用户选择公司,则公司的结果会显示在其相应的列中。
我在做一些研究时发现了类似的问题,但没有一个真正解决了我的问题。
我有一个带有一些输入标准和一个提交按钮的表单。单击提交时,将在表单下方填充一个 primefaces 数据表,其中包含一些结果。我需要的是根据输入的数据显示不同的表格而不刷新整个页面。例如,如果用户在表单中输入 Person 作为值,则会显示 Person 表的结果。但是,如果用户选择公司,则公司的结果会显示在其相应的列中。
只需使用update
属性来更新数据表。此外,您可以使用<p:columns>
动态生成列。
<p:inputText value="#{bean.input}" />
<p:commandButton value="submit" action="#{bean.submit}" update="table" />
<p:dataTable id="table" value="#{bean.model}" var="item">
<p:columns value="#{bean.columns}" var="column">
<h:outputText value="#{item[column]}" />
</p:columns>
</p:dataTable>
有类似的东西:
public void submit() {
model = populateModelBasedOn(input);
columns = populateColumnsBasedOn(input);
}