单击selectboolean复选框时设置bean值



我在xhtml页面中有一个bean类和一个selectBooleanCheckbox。我希望在单击该框时,应该在backingbean中设置该值。

这是代码:

<h:selectBooleanCheckbox id="provisioningTargetCollector" 
                           value="#{targetSource.provisioningTargetCollector}">
                           </h:selectBooleanCheckbox>

Bean类:

public boolean isProvisioningTargetCollector() {
    return _provisioningTargetCollector;
 }
 public void setProvisioningTargetCollector(boolean provisioningTargetCollector) {
     _provisioningTargetCollector = provisioningTargetCollector;
 }

但是getter和setter仅在页面加载时调用。如何在单击复选框时在bean方法中设置值。

只有在按下提交按钮时,模型才会填充表单数据。如果你想对服务器进行部分更新,你需要发送一个AJAX请求。幸运的是,从JSF2开始,引入了<f:ajax>标签,它变得非常简单。它为实现ClientBehaviorHolder接口的UIComponent实例(即能够触发ajax请求的组件)添加了ajax功能。

要对compenets进行部分更新,您需要在<f:ajax>标记的execute属性中指定它们的客户端ID。由于execute属性的默认值计算为@this,或标记所附的组件。只要您只想更新给定的<h:selectBooleanCheckbox>,就可以简单地在复选框中嵌套一个纯<f:ajax />标记,即:

<h:selectBooleanCheckbox id="provisioningTargetCollector" value="#{targetSource.provisioningTargetCollector}">
    <f:ajax />
</h:selectBooleanCheckbox>

相关内容

  • 没有找到相关文章

最新更新