对于更重要的选择,Select2中的搜索框非常棒。然而,在一个例子中,我有4个简单的硬编码选项。在这种情况下,搜索框是多余的,而且看起来有点傻。有没有办法把它藏起来?我在网上查阅了文档,在构造函数中找不到任何选项。
当然,我可以只使用常规的HTML选择,但为了保持一致性,如果可能的话,我希望使用Select2。
对于更重要的选择,Select2中的搜索框非常棒。然而,在一个例子中,我有4个简单的硬编码选项。在这种情况下,搜索框是多余的,而且看起来有点傻。有没有办法把它藏起来?我在网上查阅了文档,在构造函数中找不到任何选项。
当然,我可以只使用常规的HTML选择,但为了保持一致性,如果可能的话,我希望使用Select2。
当前回答
为了防止有人无意中发现这一点,现在在构造函数中有一个hideSearch选项,它似乎更接近问题所寻找的东西。
回声Select2::小部件(['名字' = >“状态”,“hideSearch”= > true,“数据”= >[1 = >“活跃”,2 = > '活动']]);
其他回答
我喜欢根据选择中的选项数量动态地执行此操作;隐藏搜索选择与10或更少的结果,我做:
$fewResults = $("select>option:nth-child(11)").closest("select");
$fewResults.select2();
$('select').not($fewResults).select2({ minimumResultsForSearch : -1 });
为了防止有人无意中发现这一点,现在在构造函数中有一个hideSearch选项,它似乎更接近问题所寻找的东西。
回声Select2::小部件(['名字' = >“状态”,“hideSearch”= > true,“数据”= >[1 = >“活跃”,2 = > '活动']]);
这是最好的解决方案,干净又好用:
$("#select2Id").select2 () ;
$("#select2Id").select2 ('container').find ('.select2-search').addClass ('hidden') ;
然后,创建一个类.hidden {display;none;}
@Misha Kobrin的回答很适合我,所以我决定多解释一下
你想隐藏搜索框,你可以通过jQuery来实现。
例如,你已经初始化了select2插件在一个下拉列表中有id受众
element_select = '#audience';// id or class
$(element_select).select2("close").parent().hide();
该示例适用于select2工作的所有设备。
试试这个CSS
input[aria-controls=select2-product-type-results]{
display: none;
}
这个输入是搜索字段