【发布时间】:2013-03-02 07:51:20
【问题描述】:
我通过按下命令按钮使用数据表动态添加输入文本,但每次添加行时页面都会刷新,我如何在数据表中添加一行而不使用 ajax 刷新页面。这是代码
<h:form>
<h:dataTable id="table" value="#{dataTableBean.cities}" var="city">
<h:column>
<f:facet name="header">
<h:outputText value="City name" />
</f:facet>
<h:inputText value="#{city}" />
</h:column>
</h:dataTable>
<h:commandButton value="Add one more city" id="ajax" update="table"
actionListener="#{dataTableBean.enlargeList}" />
<h:commandButton value="Submit" actionListener="#{dataTableBean.processList}" />
</h:form>
【问题讨论】:
-
您混淆了 Primefaces UI 组件 (p) 和标准 JSF 组件 (h)。查看两个命令按钮的文档,找出差异,如果您有其他问题,请回复。
-
另外,请务必了解 action 和 action listener 之间的区别,例如,在这个很好的答案:Differences between action and actionListener.
标签: ajax jsf-2 primefaces