我需要在数据表的每一行中都有一个覆盖面板,以便动态更改记录。如下所示:
我不知道为什么当我按下保存按钮时,它会调用我存储新年龄的属性(str)的设置器两次。第一次设置新值,但在第二次设置中它只返回一个空值。
22:32:34,502 信息 [标准输出] (http-localhost-127.0.0.1-8080-3) 31
22:32:34,502 信息 [标准输出] (http-localhost-127.0.0.1-8080-3)
这是代码:
<p:dataTable value="#{backbean.l}" var="l" style="width: 300px;">
<p:column>
<h:outputText value="#{l.id}" />
</p:column>
<p:column>
<h:outputText value="#{l.nome}" />
</p:column>
<p:column>
<h:outputText value="#{l.age}" />
</p:column>
<p:column>
<p:graphicImage value="/img/icone.png" id="newAge">
<p:overlayPanel id="imgPanel" for="newAge" showEvent="mouseover"
hideEvent="mousedown" showCloseIcon="true">
<h:outputText value="Change Age:" />
<p:inputText value="#{backbean.str}" style="margin-left: 10px;"></p:inputText>
<br />
<p:commandButton action="#{backbean.save}" value="Save"></p:commandButton>
</p:overlayPanel>
</p:graphicImage>
</p:column>
</p:dataTable>
提前致谢。
此致,
路易斯
@编辑:
猜猜它已经解决了......刚刚添加了 dynamic="true" ,它似乎工作正常。明天我将验证该解决方案,然后在这里确认。