您需要告诉命令按钮改用Ajax。这就像在其中嵌套
<f:ajax>标签一样简单。您需要指示它通过提交整个表单
execute="@form"并渲染ID的元素
comments通过
render="comments"。
<h:commandButton value="read" action="#{commentManager.findByTopic}"> <f:ajax execute="@form" render="comments" /></h:commandButton>不要忘记确保在主模板中使用a
<h:head>而不是a
<head>,以便必需的JSF ajax Javascripts将自动包括在内。
<h:head> ...</h:head>
同样,具有ID的元素
comments必须 已经 由JSF呈现给客户端,以便能够再次被Javascript /
Ajax更新(重新呈现)。所以,最好是把
<h:dataTable>一个
<h:panelGroup>与该ID。
<h:panelGroup id="comments"> <h:dataTable rendered="#{not empty commentManager.comments}"> ... </h:dataTable></h:panelGroup>


