java - 将组件值和另一个参数发送给监听器

标签 java ajax jsf primefaces listener

我有一个带有各种复选框的面板网格。复选框与特定掩码相关联。按下复选框时,应将复选框的值(选中/未选中)和特定于该复选框的掩码参数传递给监听器。

<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 属性。是否可以将复选框值作为参数发送给监听器或以监听器可访问的其他方式发送?

最佳答案

当前组件在 EL 中可用作隐式变量 #{component}。在输入组件中,这将使用 UIInput 的实例进行设置类又具有 getValue()返回提交、转换和验证值的方法。所以,这应该做

<p:ajax listener="#{options.selectionChanged(component.value)}" />

关于java - 将组件值和另一个参数发送给监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11224994/

相关文章:

java - 如何从函数中打印ln值?

java - 将 hashMap 存储在数组中

javascript - 当传递 JSON 请求时 ajax 调用失败

ajax - 我应该将 "ajaxStart"方法附加到什么?

jsf 过滤器似乎不起作用

jsf - 使用 PrettyFaces 的 JSF 资源(CSS、JS、图像)的漂亮 URL

javascript - 如何在使用 Primefaces 的 Gmap 中准备好 map 后运行 js 函数?

java - Cucumber Scenario Outline 只运行了一次,即使它有 3 个场景

java - Ivy:具有不同依赖文件的多个检索任务

jQuery/Ajax : How to loop through array as part of Ajax success function