如何将值传递给ajax侦听器primefaces

Lan*_*ter 12 ajax jsf primefaces

所以我有

<p:ajax event="tabChange" listener="#{refriedBean.onTabChange}" />
Run Code Online (Sandbox Code Playgroud)

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

public void onTabChange(TabChangeEvent event, Object obj)
Run Code Online (Sandbox Code Playgroud)

怎么会这样做呢?

Nik*_*zov 9

您可以obj使用bean中的其他属性替换参数,并在ajax请求上为此属性设置所需的值:

<p:ajax event="tabChange" listener="#{refriedBean.onTabChange}">
  <f:setPropertyActionListener target="#{refriedBean.additionalProperty}" value="value_here"/>
</p:ajax>
Run Code Online (Sandbox Code Playgroud)

请参见setPropertyActionListener

  • @Angelo.Hannes http://stackoverflow.com/questions/15876257/fsetpropertyactionlistener-doesnt-set-the-value-however-action-is-triggered (4认同)
  • 不能让这个工作.豆子看起来怎么样? (3认同)
  • 它必须是嵌套的,因为父必须是ActionSource类型.它似乎没有工作.我在refriedBean中创建了一个名为additionalProperty的值,并给它一个getter和setter. (2认同)