我有以下代码:
<h:commandLink action="#{testBean.showSomething}">
Do Stuff
</h:commandLink>
做我想做的事情(改变testbean的状态并重新加载将显示不同div组的页面。因为它们的“渲染”属性) 现在我想用ajax来完成这个,所以我这样做了:
<h:commandLink action="#{testBean.showSomething}">
<f:ajax event="click" render=":content" />
Do Stuff
</h:commandLink>
但是这会导致showSomething方法甚至无法被调用。 恕我直言,我想做的事情相当简单,但我不知道如何去做。
答案 0 :(得分:18)
您需要使用event="action"
代替event="click"
。你甚至可以完全省略它。这是嵌套在<f:ajax>
组件中时UICommand
正在侦听的默认事件。
<h:commandLink action="#{testBean.showSomething}">
<f:ajax render=":content" />
Do Stuff
</h:commandLink>