使用 partialSubmit 触发 actionListener

Trigger actionListener with partialSubmit

我有以下代码:

<h:panelGrid columns="2" styleClass="labelValueContainer" columnClasses="one,two">
    <p:outputLabel value="Value" />
    <p:inputText id="englishValue" styleClass="englishValue" value="#{labelsManager.addLabelsBean.engValue}" />
</h:panelGrid>
<p:commandButton value="COPY" styleClass="copyButton" process="englishValue" partialSubmit="true" actionListener="#{labelsManager.setValueForCopy}">

我想做的是仅提交一个 inputText 并使用 ajax 触发一个 actionLister(或一个动作)。如果我删除 partialSubmit="true" 方法 "setValueForCopy" 被触发但是当我再次添加时 actionListener 不再被触发而且我不知道怎么办。 如果有人有更好的提交输入和触发方法的解决方案,我愿意倾听。

谢谢!

当使用 partialSubmit="true" 时,只有 process="..." 中的内容会被提交(和处理)。这缺少 <p:commandButton> 本身。

通过@this添加:

<p:commandButton ... process="@this englishValue" partialSubmit="true" ... />

另请参阅:

  • Understanding PrimeFaces process/update and JSF f:ajax execute/render attributes