如何ajax更新PrimeFaces数据表的页脚中的项目?

如何ajax更新PrimeFaces数据表的页脚中的项目?,第1张

如何ajax更新PrimeFaces数据表的页脚中的项目?

您实际上无法从表中更新表的值。但是,您可以使用它

p:remoteCommand
来实现。另外,我可能会使用对整个表cellEdit事件(而不是单个
p:ajax
你的
pe:inputNumber
)。总体结果将是:

<p:remoteCommand name="refreshFooter" update=":formName:outputTotal"/>...<p:dataTable id="myTable" value="#{myBean.someList}" var="currentItem">    <p:column headerText="Header1">        <h:outputText value="#{currentItem.name}" />    </p:column>    <p:column headerText="Header2">        <pe:inputNumber value="#{currentItem.inputVal}"> <p:ajax event="change" listener="#{myBean.changeListener}" process="@this"     oncomplete="refreshFooter();" update="outputVal"/>        </pe:inputNumber>    </p:column>    <p:column headerText="Header3">        <h:outputText id="outputVal" value="#{currentItem.outputVal}" />    </p:column>    <f:facet name="footer">        Total:        <h:outputText id="outputTotal" value="#{myBean.total}" />    </f:facet></p:dataTable>

请注意,您 可能需要
添加

partialSubmit="true"
到中
p:ajax
,这样仅提交组件的数据。如果您喜欢cellEdit事件的想法,则需要使dataTable可编辑,并在中添加以下内容
p:dataTable
,并摆脱掉
p:ajax
内部
pe:inputNumber

<p:ajax event="cellEdit" partialSubmit="true" listener="#{myBean.onCellEdit}"     process="@this" oncomplete="refreshFooter();"/>

祝好运!



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4929046.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存