【问题标题】:PrimeNG p-table scrollable scrollHeight last row p-dropdown to open upwardsPrimeNG p-table 可滚动 scrollHeight 最后一行 p-dropdown 向上打开
【发布时间】:2023-11-21 09:12:01
【问题描述】:

使用以下配置:

"@angular/cli": "^7.3.9", "primeng": "7.0.5",

我有一个页面使用 PrimeNG 的 <p-table>,即 scrollable,并且将 scrollHeight 设置为 100%。此表包含在一个固定高度为300pxdiv 中。

创建 Stackblitz:https://stackblitz.com/edit/angular-ejdubg

每一行都有一个p-dropdown。打开下拉菜单时,在顶行中,它向下打开,这是可以接受的,但是当打开最后一行的下拉菜单时,它也向下打开,但应该向上打开,这是p-dropdown 的默认行为。

这里有什么问题的建议。

【问题讨论】:

    标签: javascript angular primeng primeng-turbotable primeng-dropdowns


    【解决方案1】:

    您需要在 p-dropdown 上添加 appendTo="body"

    <th *ngFor="let col of columns" [ngSwitch]="col.field">
                    <p-dropdown appendTo="body" [options]="brands"></p-dropdown>
                </th>
    

    【讨论】:

    • 根据您的回答更新了 stackblitz,但它仍然向下打开并位于桌子下方。它应该向上打开。请检查。
    • @KunalDethe 我没有看到您更新了项目。看到分叉的项目是你需要的吗? stackblitz.com/edit/angular-xheopx
    • appendTo="body" 帮助打开下拉菜单并在表格之外。如果下面没有空间,我需要它向上打开。 IE。表中的最后一行。对于p-dropdown,它确实可以开箱即用,而在没有appendTo 的情况下它确实有效。我的问题是有人将top 属性设置为px!important.. 这是错误的。相反,它应该允许下拉列表自行计算top。所以它现在固定了。谢谢。