我试图根据复选框的状态在 ManagedBean 中执行一些操作。
复选框在这里:
<p:selectBooleanCheckbox id="cb">
<p:ajax listener="#{myBB.checkboxChanged}"/>
</p:selectBooleanCheckbox>
监听器方法的签名是这样的:
public void checkboxChanged(AjaxBehaviorEvent event)
侦听器方法按预期调用,但我不确定如何获取复选框的状态(如果已选中)
这始终是错误的:
((SelectBooleanCheckbox)event.getSource()).isSelected()
我需要绑定复选框的值吗?我想避免这种情况,因为复选框是从循环中的枚举生成的,并且我没有任何布尔值来绑定它(模型的设计方式是我将枚举实例添加/删除到集合,不设置布尔属性)
我在 Tomcat 6.0.36 和 Primefaces 3.5 上运行代码
JSF 实现是 Apache Myfaces 2.1.10
您的代码在 Mojarra 2.2.1 和 PrimeFaces 4.0RC1 以及 Mojarra 2.0.3 和 PrimeFaces 3.5 上按预期工作。不幸的是我手边没有2.1。您使用的是哪个版本的 PrimeFaces?你能发布你的完整代码吗?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)