jquery chosen插件—多选下拉框可搜索-传入后台选中项+从后台读取选中项

本文介绍了如何在基于Bootstrap的项目中使用Chosen插件创建可搜索的多选下拉框。通过示例代码展示了如何从前台传入后台选中项,以及从后台读取并显示选中项。Chosen插件的引入、配置以及与Freemarker模板的结合使用也在文中详细说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个是基于bootstrap工程,可能需要bootstrap的一些文件。

二话不说上代码:

首先引入css和js,文件自己下。

<link href="${base}/resources/console/css/plugins/chosen/chosen.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="${base}/resources/console/js/plugins/chosen/chosen.jquery.js"></script>


demo1:

这里是freemaker简单的循环出option,将select的name设置为memberIds,后台获取的就是选中的option的值的数组。

<div class="input-group" style="width:100%;">

    <select data-placeholder="请选择关联家长(可搜索名字)" name="memberIds" class="chosen-select" multiple style="width:100%;"  tabindex="4">

        [#list members as member]

        <option value="${member.id}" hassubinfo="true" >${member.realName}(${member.mobile})</option>

        [/#list]

    </select>

</div>


demo2:

这里是后台向前台展示显示选中哪些选项,在option 里控制判断是否选中。可以选中多个哟。

<div class="input-group" style="width:100%;">

<select data-placeholder="请选择关联家长(可搜索名字)" name="memberIds" class="chosen-select" multiple style="width:100%;"  tabindex="4">

[#list members as member]

<option value="${member.id}" hassubinfo="true" 

[#list linkMembers as linkMember]

#if member.id==linkMember.id ]

 selected="true"

[/#if]

[/#list]

 >

${member.realName}(${member.mobile})

</option>

[/#list]

</select>

</div>


最后不要忘记需要js调用方法

<script>

    var config = {

        '.chosen-select': {},

        '.chosen-select-deselect': {

            allow_single_deselect: true

        },

        '.chosen-select-no-single': {

            disable_search_threshold: 10

        },

        '.chosen-select-no-results': {

            no_results_text: '无选择项'

        },

        '.chosen-select-width': {

            width: "95%"

        }

    }

    for (var selector in config) {

        $(selector).chosen(config[selector]);

    }

</script>

这个script放在html的最下面。和页面加载顺序有关。



                                       


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值