【发布时间】:2021-09-07 07:04:41
【问题描述】:
我在引导下拉菜单中使用搜索输入框。当我搜索任何值时,它会过滤下拉列表以仅显示过滤后的下拉项目。
这里的问题是当下拉位置向上并且我过滤列表时,下拉项目的起点保持不变,在下拉项目和下拉列表之间留下间隙。但是在底部位置打开下拉菜单时可以正常工作。
当我单击下拉按钮时,Bootstrap 会添加x-placement="top-start",如下所示,当我过滤值时它永远不会更新。我想更新位置,以便每次从下拉列表开始并且之间没有间隙。
<div class="dropdown show">
<div class="dropdown-menu show"
x-placement="top-start"
style="position: absolute; will-change: transform; top: 0px; left: 0px; transform: translate3d(0px, -279px, 0px);">
...
</div>
</div>
我已经添加了问题的codeandbox
https://stackblitz.com/edit/react-xz1jvq?file=src/App.js
过滤器后的下拉菜单在两者之间留出空间。基本上我想在过滤后每次更新它的位置
【问题讨论】:
-
你有一个codeandbox以便更好地测试它吗?
-
@Apostolos 使用代码框链接更新了问题。
-
嗯,这很棘手
-
你检查我的答案了吗?
-
是的@Apostolos,使用 jQuery 效果很好。但我正在尝试使用 ReactJS 的一些方法。 ReactJS 有没有办法实现同样的效果。
标签: html css reactjs twitter-bootstrap bootstrap-4