如何在JSF中在客户端和服务器端之间来回通信?

时间:2014-08-18 21:36:32

标签: jsf

到目前为止,我在JSF中遇到的大部分问题似乎都归结为此 - 从(静态)客户端到(动态)服务器端的通信,反之亦然;例如,用于重新渲染组件。

示例:启用/禁用取决于commandButton选择的按钮(selectoneradio)。

通信选择selectoneradio(客户端到服务器)然后 ajaxingly 更新commandButton(服务器)的正确方法是什么?客户)?

1 个答案:

答案 0 :(得分:1)

使用<f:ajax>

这是一个在选择第二项时启用按钮的示例。

<h:selectOneRadio value="#{bean.selectedItem}">
    <f:selectItem itemValue="1" itemLabel="First item" />
    <f:selectItem itemValue="2" itemLabel="Second item" />
    <f:ajax render="button" />
</h:selectOneRadio>
<h:commandButton id="button" disabled="#{bean.selectedItem != 2}" />

确保#{bean}@ViewScoped,以便在回发中记住状态。否则,当您按下提交按钮时,它将回退到默认值。


那就是说,我强烈建议你阅读一本不错的JSF书。以上内容通常已在第1章中介绍过。