【问题标题】:How do you pass a value into an ajax listener primefaces如何将值传递给 ajax 监听器 primefaces
【发布时间】:2012-03-17 08:24:49
【问题描述】:

所以我有

<p:ajax event="tabChange" listener="#{refriedBean.onTabChange}" />

但我想传入 tabChange 事件和一个存储在页面上的额外值

public void onTabChange(TabChangeEvent event, Object obj)

要怎么做呢?

【问题讨论】:

    标签: ajax jsf primefaces


    【解决方案1】:

    您可以将参数obj 替换为 bean 中的附加属性,并在 ajax 请求时为该属性设置所需的值:

    <p:ajax event="tabChange" listener="#{refriedBean.onTabChange}">
      <f:setPropertyActionListener target="#{refriedBean.additionalProperty}" value="value_here"/>
    </p:ajax>
    

    setPropertyActionListener

    【讨论】:

    • 嵌套是不必要的。无论如何,它将应用于父组件。
    • 它必须是嵌套的,因为父级必须是 ActionSource 类型。而且它似乎没有工作。我在 refriedBean 中创建了一个名为 additionalProperty 的值,并给它一个 getter 和 setter。
    • 我不明白为什么这个答案被赞成。我只是想引用像 akapelko 这样的同一个链接....
    • 这对我也不起作用。 Bean 属性未在侦听器处理程序之前设置。
    猜你喜欢
    • 2018-10-05
    • 2012-10-26
    • 1970-01-01
    • 2012-05-04
    • 1970-01-01
    • 2022-01-21
    • 2021-09-23
    • 2018-03-06
    • 1970-01-01
    相关资源
    最近更新 更多