无法在选择输入类型的下拉菜单中设置可见选项的限制

时间:2019-12-03 20:04:18

标签: javascript css select html-select dropdownbox

请在此处查看我的表格。 https://business-sale.com/daily-companies-finance-alerts#dfa-form

如您所见,当您单击下拉菜单时,下拉菜单会向上(而不是向下)打开并将用户引导至页面顶部。尤其在用户使用小屏幕的情况下,这是有问题的。我认为原因是它有太多选择。我的选择下拉框中有近1000个选项。我想将可见选项限制为10。并使下拉框可滚动。

我已经尝试过了

<select class="selectpicker" id="sector" name="sector" multiple
        style="height: 10px; overflow-y: scroll;"
        data-live-search="true"
        onfocus="this.size=10;">

<select class="selectpicker" id="sector" name="sector" multiple
        style="height: 10px; overflow-y: scroll;"
        data-live-search="true"
        onmousedown="if(this.options.length>8){this.size=8;}">

但是它不起作用。

有关其余代码,请在此处检查

https://jsfiddle.net/bashabi/8fqmuyea/5/

如何修复

2 个答案:

答案 0 :(得分:0)

将此内容添加到脚本中以按照建议的here进行覆盖。这将强制下拉菜单始终为“下拉菜单”。

$('.selectpicker').selectpicker({
    dropupAuto: false
});

也可以覆盖全局默认值。

$.fn.selectpicker.Constructor.DEFAULTS.dropupAuto = false;

还请签出:

答案 1 :(得分:0)

当我使用引导选择时;限制可见选项的解决方案位于

<select class="selectpicker" data-size="5">
  ...
</select>

所以就我而言

 <select class="selectpicker" id="sector" name="sector" multiple
        style="height: 10px; overflow-y: scroll;"
        data-live-search="true"
        data-size="10">

参考:https://developer.snapappointments.com/bootstrap-select/examples/