【发布时间】:2021-07-07 08:14:02
【问题描述】:
我有一个带有搜索字段的下拉列表来过滤列表。这是基本结构:
<div class="dropdown">
<button class="dropdown-button dropdown-toggle" @onclick="e => this.show = !this.show"></button>
<div class="dropdown-menu @(show ? "show" : "")">
<input class="form-control form-control-sm" placeholder="type filter..."/>
<div class="scrollable-menu">
<table>
...
</table>
</div>
</div>
</div>
当用户点击其他地方时,如何隐藏下拉菜单? 如果我使用按钮的 onblur 事件,当用户在过滤器输入内单击时,下拉菜单会被隐藏——> 不起作用。 下拉菜单在下拉 div 之外,所以我不能使用它。 如果我能以某种方式将按钮和下拉列表组合在一起,这样只有当用户在这个“组”元素之外单击时才会触发 focusout 事件,那将是理想的。
编辑
我更新了代码片段以显示我如何切换下拉菜单。
当用户选择列表中的元素时,show 变量也会反转。
【问题讨论】:
标签: c# html twitter-bootstrap blazor