gpt4 book ai didi

java - 更新(来自 p :ajax) Primefaces datatable select all rows of the table

转载 作者:行者123 更新时间:2023-12-01 05:44:22 24 4
gpt4 key购买 nike

我对 primefaces 2.2.1 也有同样的问题我将 Spinner 组件与 Ajax 结合使用。对于微调器上的每个更改,我想更新一个(primefaces)DataTable 组件。我不知道为什么,每次更新数据表时,即使选择模式 =“single”,也会选择所有行,并且选择采用 POJO 而不是列表的参数。这发生在复合实现中。

<h:form id="frm">
(...)
<p:dataTable id="openingHoursTbl" var="oh" value="#{cc.attrs.openingHours}" rows="7"
selection="#{cc.attrs.selectedHours}" selectionMode="single"
onRowSelectUpdate="hoursTable"
style="width: 300px">

<p:column>
<f:facet name="header">
<h:outputText value="Day" />
</f:facet>
<h:outputText value="#{oh.displayedDays}" />
</p:column>

<p:column>
<f:facet name="header">
<h:outputText value="Opening Hours" />
</f:facet>
<h:outputText id="ohHeader" value="#{oh.displayedHours}" />
</p:column>
</p:dataTable>
(...)
<p:spinner value="#{hour.fromHour}" maxlength="2" size="2" stepFactor="1" min="0" max="23">
<p:ajax process="@form" update="#{cc.clientId}:frm:openingHoursTbl" event="change" />
</p:spinner>
(...)
</h:form>

这是从服务器收到的响应(请注意,选择输入标记已选择所有行):

<partial-response>
<changes>
<update id="j_idt162:frm:openingHoursTbl">
<div id="j_idt162:frm:openingHoursTbl" class="ui-datatable ui-widget"
style="width: 300px">
<table>
(...)
</table>
<input type="hidden" id="j_idt162:frm:openingHoursTbl_selection"
name="j_idt162:frm:openingHoursTbl_selection" value="0,1,2,3,4,5,6" />
(...)

感谢您的帮助

最佳答案

老问题,但我最近遇到了类似的问题,所以它可能会帮助其他有同样问题的人。我遇到的问题是删除一行时,所以不完全相同,但无论如何。

当我删除一行时,我必须重置“所选值”。所以我想可以通过更新您正在使用的数据集来避免这种情况。

关于java - 更新(来自 p :ajax) Primefaces datatable select all rows of the table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6294898/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com