p:selectOneMenu 下拉部分滚动并且不停留在原位

2024-02-24

我正在使用 PrimeFaces 5.0.5 和 GlassFish 服务器 3.1.2.2。

我在 a 中添加了一个 selectonemenu<ui:fragment>然后将其包含在另一个 XHTML 页面中。

当我打开选择菜单并滚动鼠标滚轮时,面板将随页面浮动。

最初,我尝试编辑 CSS 文件,因为我猜测这可能是位置问题,但事实并非如此。

然后,我从展示柜复制了源代码,滚动时面板仍然分裂。

纯 HTML 下拉列表和<h:selectOneMenu>都很好,我不知道为什么它不能用<p:selectOneMenu>.

我可以找到一些提到这个问题的帖子,但它们与旧版本的 PrimeFaces 有关。

问题是否仍然存在或已在 505 中解决?如果是,我该如何解决这个问题?

如有任何反馈和评论,我们将不胜感激。

非常感谢。

p:selectOneMenu 下拉列表未附加到对话框内的组件 https://stackoverflow.com/questions/15286454/pselectonemenu-dropdown-not-attached-to-the-component-inside-a-dialog

<ui:fragment
xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:p="http://primefaces.org/ui">
<h:panelGroup
    id="cPanel"
    layout="block"
    styleClass="contentArea product">
    <div class="mainColumnContainer">
        <div class="mainColumn">
            ...
            <div id="try">
            <form>
                        ...
                <h:panelGroup>
                <h:form>
                <p:messages autoUpdate="true" />

                <h:panelGrid columns="2" style="margin-bottom:10px" cellpadding="5">
                    <p:outputLabel for="console" value="Basic:" />
                    <p:selectOneMenu id="console" value="#{selectOneMenuView.console}">
                        <f:selectItem itemLabel="Select One" itemValue="" />
                        <f:selectItem itemLabel="Xbox One" itemValue="Xbox One" />
                        <f:selectItem itemLabel="PS4" itemValue="PS4" />
                        <f:selectItem itemLabel="Wii U" itemValue="Wii U" />
                    </p:selectOneMenu>

                    <p:outputLabel for="car" value="Grouping: " />
                    <p:selectOneMenu id="car" value="#{selectOneMenuView.car}">
                        <f:selectItem itemLabel="Select One" itemValue="" />
                        <f:selectItems value="#{selectOneMenuView.cars}" />
                    </p:selectOneMenu>

                    <p:outputLabel for="city" value="Editable: " />
                    <p:selectOneMenu id="city" value="#{selectOneMenuView.city}" effect="fold" editable="true">
                        <f:selectItem itemLabel="Select One" itemValue="" />
                        <f:selectItems value="#{selectOneMenuView.cities}" />
                    </p:selectOneMenu>

                </h:panelGrid>
            ...

问候, 雷克


问题是这些浮动 div 是通过绝对定位创建的,当您有布局或对话框或破坏页面流程的东西时,这些p:selectOneMenu即使您滚动布局或容器,“面板”仍保持在相同的绝对位置,因为它们默认附加到主体。

因此,解决此问题的一种方法是将它们附加到自身,以便绝对面板出现在页面流中的选择旁边,并且不会随着这些“内部滚动”而移动:

<p:selectOneMenu id="console" value="#{selectOneMenuView.console}" appendTo="@this">
    <f:selectItem itemLabel="Select One" itemValue="" />
    <f:selectItem itemLabel="Xbox One" itemValue="Xbox One" />
    <f:selectItem itemLabel="PS4" itemValue="PS4" />
    <f:selectItem itemLabel="Wii U" itemValue="Wii U" />
</p:selectOneMenu>

使用属性appendTo:

将叠加层附加到搜索表达式定义的元素。 默认为文档正文。

如果您在对话框中使用它,则面板可以按对话框高度进行切割,因为它的样式是overflow: hidden。所以另一个解决方案是应用position:fixed,你可以这样做:

panelStyle="position: fixed;"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

p:selectOneMenu 下拉部分滚动并且不停留在原位 的相关文章

  • 如何将 jsf 或 html 标签添加到 p:panel 的标头

  • 来自 jsp:include 的 JSF 1.2 自定义组件

    在开始回答我的问题之前 我先说一下我的不幸的局限性 我使用的是 JSF 1 2 而不是 2 所以没有复合组件 我使用 JSP 代替 Facelets 进行渲染 所以这些复合组件也没有 我不允许使用任何第三方标签库 richFaces ice
  • 无法让 PrimeFaces RequestContext.getCurrentInstance().openDialog() 工作

    无法获取 PrimeFacesRequestContext getCurrentInstance openDialog 上班 我直接从 primefaces 展示中提取了示例代码 但我从未打开过对话框 我正在使用在 Wildfly 8 2
  • 如何指定消息是否应显示在 p:growl 或 p:messages 中?

    在我的 Facelets 页面中 我有这个
  • 丰富:数据表行跨度问题

    我需要创建一个 rich dataTable 甚至扩展 具有以下功能 我有一个公司类 其中包含产品对象的集合 我想展示下表 我仍然没有弄清楚如何使用子表执行此操作 在所有示例中 我发现子表具有与主表完全相同的列 据推测 我需要在前两列中使用
  • 设置开始日期后设置 primefaces 日历结束日期

    我正在使用 primefaces 日历来创建事件 使用 mindate 参数 我禁用了当天之前的日子 即使有结束日期 我也想这样做 禁用开始日期之前的日子 我不知道如何处理这个问题 因为支持 bean 仅在验证整个表单后才获取开始日期 我需
  • 如何显示/隐藏jsf组件

    在我的一个 JSF 应用程序中 顶部的标题部分包含 selectOneMenu 底部的内容部分显示过滤器组件 默认情况下 应用程序首先在顶部显示 selectOneMenu 数据 在底部显示相应的 Filter 信息 如果用户选择不同的se
  • jsf文件下载不起作用

    当我点击h commandButton它执行myBean dowanlod 方法 但它不下载任何文件 这是我在支持 bean 中的方法 没有例外 光标变得忙碌 似乎在等待响应 对于这种操作是否有任何额外的配置或者这段代码有什么问题吗
  • 内插入换行符

    基本上我只是想添加一个 br 或等效的东西 到 a 的 值 属性
  • JSF 2:如何在同一输入中显示不同的ajax状态?

    当每个字段失去焦点时 我想验证表单中的每个字段 当发生这种情况时 我希望发生以下操作 1 在字段的右侧出现一个图像 一个 gif 表示系统正在检查用户输入 2 完成后 会在右侧出现另一个 gif 取决于输入 例如 success gif 或
  • 身份验证后以编程方式添加角色

    我有以下 JSF 2 1 登录表单 在 Glassfish 3 1 中运行
  • RichFaces动态TabPanel

    如何实现简单的添加 删除动态
  • Primefaces 3.2 客户端 API 文档在哪里?

    我下载了 Primefaces 3 2 但找不到客户端 API 的 javadocs 他们说它有丰富的客户端 API 所以我也可以看一下 Thanks 虽然这听起来太微不足道 但作为一种潜在的解决方法 如果在提供的文档中找不到所需的属性 函
  • viewExpiredException JSF [重复]

    这个问题在这里已经有答案了 为了处理 JSF 中的 viewExpiredException 我编写了代码
  • JSF 和库的不明确性

    在花了一些时间使用 servlet 和 JSP 之后 现在我正在尝试了解一些有关 JSF 的知识 我已经学习了基础知识 做了几个简单的例子 对 工作流程 有了基本的了解 但我仍然无法理解 javax faces webapp FacesSe
  • Primefaces 进度条动态标签

    您好 我正在使用 JSF 和 Primefaces 我有一个很长的任务 在此期间我想向用户显示一个进度条 以进度 int 和状态 String 作为指示器 这两个参数映射到后端 bean 的两个字段 如果我使用
  • Pretty Faces:通用 URL 映射

    使用 Pretty Faces 3 我有一些像这样的映射
  • jsf中的会话注销问题

    我正在开发一个 Web 应用程序 并使用框架 jsf hibernate 和 spring 应用程序中有不同类型的用户 根据此处登录的用户类型 我为不同的用户类型启用菜单中的链接 用户登录后 会向用户提供菜单栏中的注销链接 我已经编写了 l
  • f:ajax 不工作

    我很难得到f ajax从事某项工作h panelGroup 这就是我正在做的 JSF 代码
  • 删除特定数据表上的所有边框

    我需要使用 PrimeFaces 隐藏一个数据表的所有边框 而不是全部 我尝试了很多事情 但没有人奏效 有谁知道该怎么做 我已将以下样式 单独 应用于ui datatable class border hidden important bo

随机推荐