gpt4 book ai didi

java - 包含 pickList 的 PopupPanel 重新打开后位置发生变化

转载 作者:行者123 更新时间:2023-12-02 00:22:10 24 4
gpt4 key购买 nike

我在 popupPanel 中有一个 pickList。如果我打开 popupPanel,它会出现在窗口中间。如果我关闭并重新打开它,它看起来会移动到左侧和底部。仅当我在 popupPanel 中有 pickList 时才会发生这种情况。如果我删除它,一切都会按预期进行。

下面我有一个重现该问题的代码片段。我使用的是 RichFaces 4.1,该问题可以在 IE、Chrome 和 Firefox 上重现(其他未测试)。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:rich="http://richfaces.org/rich"
xmlns:fn="http://java.sun.com/jsp/jstl/functions">

<h:head></h:head>
<h:body>
<rich:popupPanel domElementAttachment="parent" id="popup" autosized="true" modal="true">
<h:commandButton value="Close" onclick="#{rich:component('popup')}.hide();" />
<rich:pickList>
<f:selectItems value="#{fn:split('Test,TestTest,TestTestTest', ',')}" />
</rich:pickList>
</rich:popupPanel>
<h:commandButton value="Panel" onclick="#{rich:component('popup')}.show();" />
</h:body>
</html>

最佳答案

在不理解原因的情况下,我可以通过将 domElementAttachment="parent" 更改为 domElementAttachment="body" 来解决这种情况下的问题。如果弹出窗口是在表单内定义的,则 body 可以替换为 form

我真的不知道为什么会这样,并且对解释非常感兴趣。

关于java - 包含 pickList 的 PopupPanel 重新打开后位置发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10735691/

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