我有一个带有各种复选框的面板网格。复选框与某个掩码相关联。按下复选框时,应将复选框的值(选中/取消选中)和特定于该复选框的掩码参数传递给监听程序。
<p:selectBooleanCheckbox value="#{options.mustChangePasswordMask}">
<p:ajax listener="#{options.selectionChanged}" />
</p:selectBooleanCheckbox>
<p:selectBooleanCheckbox value="#{options.mustChangePasswordMask}">
<p:ajax listener="#{options.selectionChanged('MASK_1')}" />
</p:selectBooleanCheckbox>
这两个代码片段只完成了我想要的工作的一半。我希望在所有复选框中都使用侦听器,因此不能在侦听器中使用mustChangePasswordMask属性。是否可以将复选框值作为参数发送给监听器,或者以监听器可访问的其他方式发送?
发布于 2012-06-27 19:21:04
当前组件在EL中作为隐式变量#{component}
可用。在输入组件中,这将通过UIInput
类的一个实例进行设置,该实例又具有一个getValue()
方法,该方法返回提交、转换和验证的值。因此,这应该是可行的
<p:ajax listener="#{options.selectionChanged(component.value)}" />
https://stackoverflow.com/questions/11224994
复制相似问题