【问题标题】:Primefaces CommandButton does not fire actionListener method inside p:columns header facet [duplicate]Primefaces CommandButton不会在p:columns标题方面触发actionListener方法[重复]
【发布时间】:2013-08-05 14:25:54
【问题描述】:

我想从列标题内的 p:commandButton 触发 actionListener,如下所示:

<h:form id="foos">
    <p:messages id="mess" />

    <p:columns var="foo" value="#{fooBean.foos}">
        <f:facet name="header">#{foo.name} 
            <p:commandButton icon="ui-icon-trash" actionListener="#{fooBean.test()}" update=":foos" process="@this" />
        </f:facet>

        <h:outputText value="foobar" />

    </p:columns>
</h:form>

无论我尝试什么,actionListener 方法都不会被触发。如果我将 commandButton 移到 facet 之外,它可以工作,所以我假设 facet 组件与 commandButton 一起出现了问题。

没有显示任何消息,因此看起来验证没有失败。

这是在 Primefaces 3.5 下

【问题讨论】:

  • 您确定您的&lt;p:commandButton&gt; 在单个&lt;h:form&gt; 中吗?
  • 我认为你不能将 html 组件包装在 f:facet 中,因为它只能指定页眉或页脚等类型
  • @LuiggiMendoza...哦,好吧。
  • 注意immediate="true" 的含义。
  • 我希望这没有被标记为重复,因为它不是重复的,它是一个 PrimeFaces 错误。在这里查看我的答案:p:commandButton action and f:setpropertyactionlistener not invoked in p:columngroup.

标签: java jsf primefaces


【解决方案1】:

如果您的测试方法没有 ActionEvent 参数,则使用 action

 .....icon="ui-icon-trash" action="#{fooBean.test}" ... 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-29
    • 1970-01-01
    相关资源
    最近更新 更多