Angular UI Bootstrap typeahead不会像普通选择下拉列表一样延伸到父div边界

时间:2016-07-14 20:48:37

标签: select popup angular-ui-bootstrap typeahead slimscroll

当用户键入文本输入表单控件时,我使用Angular UI Bootstrap typeahead显示自定义的建议列表。这个表单控件存在于div内部,使用jQuery slimScroll,以便在内容大小波动的情况下保持一个恒定的div大小。我真的希望typeahead会显示在所有内容上,比如常规的html选择下拉列表,但不幸的是它没有,就像在plunker中可以看到的那样。我尝试过使用z-index并调整位置和显示属性;所有没有结果的努力。

有人知道如何让typeahead弹出窗口显示在其父边框上吗?如果没有,有没有办法可以强制select标签显示HTML内容,所以我可以在建议列表中包含glyphicons,强调文本等?

2 个答案:

答案 0 :(得分:0)

问题在于纤细的滚动 - 你在div内部,相对位置和溢出隐藏(想象它是一个iFrame)。有一个小的解决方法...... 您可以,基本上将生成的UL(.dropdown-menu)的位置设置为 fixed ,为其设置高度,然后设置溢出:滚动... 它可以在输入字段具有固定位置的某些情况下工作...否则您需要控制输入的位置并调整要跟随的自动完成的位置,以及另外一堆讨厌的脚本

不看你的应用程序,我无法理解为什么你有这个特定的架构,但我可以说,必须有更清晰的选项来处理slimscroll之外的自动完成。

答案 1 :(得分:0)

我只是设置了typeahead-append-to-body =" true"在typeahead控件上,它工作。不确定为什么,但它肯定是一个简单的解决方案。