基于BootStrap multiselect.js实现的下拉框联动效果

发布时间 - 2026-01-11 02:33:16    点击率:

背景:当option特别多时,一般的下拉框选择起来就有点力不从心了,所以使用multiselect是个很好的选择,可以通过输入文字来选择选项很方便,但是有一个需要下拉框联动,网上找了半天才找到解决方法,在此分享一下

1、先引入

<script src="~/Assets/js/bootstrap-multiselect.min.js"></script>
  <link href="~/Assets/css/bootstrap-multiselect.css" rel="external nofollow" rel="stylesheet" />

然后全局定义

 function RegSelect() {
      $('.multiselect').multiselect({
        buttonClass: 'btn btn-white ',
        enableFiltering: true,
        enableHTML: true,
        includeSelectAllOption: true,
        selectAllText: '全选',
        allSelectedText: '全部选中',
        nonSelectedText: '请选择',
        nSelectedText: '个被选中',
        templates: {
          button: '<button type="button" class="multiselect dropdown-toggle" data-toggle="dropdown"><span class="multiselect-selected-text"></span> &nbsp;<b class="fa fa-caret-down"></b></button>',
          ul: '<ul class="multiselect-container dropdown-menu"></ul>',
          filter: '<li class="multiselect-item filter"><div class="input-group"><span class="input-group-addon"><i class="fa fa-search"></i></span><input class="form-control multiselect-search" type="text"></div></li>',
          filterClearBtn: '<span class="input-group-btn"><button class="btn btn-default btn-white btn-grey multiselect-clear-filter" type="button"><i class="fa fa-times-circle red2"></i></button></span>',
          li: '<li><a tabindex="0"><label></label></a></li>',
          divider: '<li class="multiselect-item divider"></li>',
          liGroup: '<li class="multiselect-item multiselect-group"><label></label></li>'
        }
      });
    }

只需要在页面加载时RegSelect();(只能调用一次,不然会出现问题)就可以了

2、两个下拉框

 <div class="form-group">
          <label for="RepairOrg" class="col-sm-3 control-label">维修单位</label>
          <div class="col-sm-9">
            @Html.DropDownList("RepairOrgUID", ViewBag.OrgList as List<SelectListItem>, "请选择", new { @class = "form-control multiselect", onchange = "OrgChange(this)", id = "RepairOrg" })
          </div>
        </div>
        <div class="form-group">
          <label for="RepairContact" class="col-sm-3 control-label">维修人</label>
          <div class="col-sm-9">
            @Html.DropDownList("RepairContactUID", ViewBag.ContactList as List<SelectListItem>, "请选择", new { @class = "form-control multiselect", id = "RepairContact" })
          </div>
        </div>

3、js代码

function OrgChange(obj, patientID) {
      var RepairOrg = $(obj).val();
      $.post("/TerminalManage/GetContactByOrg", { RepairOrg: RepairOrg }, function (data) {     
        var newCitys = new Array();
        var obj = new Object();
        obj = {
          label: "请选择",
          value: ""
        };
        newCitys.push(obj);
        for (var i = 0; i < data.length; i++) {
          obj = {
            label: data[i].Text,
            value: data[i].Value
          };
          newCitys.push(obj);
        }
        $("#RepairContact").multiselect('dataprovider', newCitys);
        $('#RepairContact').multiselect('refresh');
      });
    }

总结

以上所述是小编给大家介绍的基于BootStrap multiselect.js实现的下拉框联动,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# bootstrap  # multiselect  # 下拉框联动  # AngularJS实现的select二级联动下拉菜单功能示例  # Angularjs实现下拉框联动的示例代码  # JavaScript实现三级联动菜单效果  # JS实现经典的中国地区三级联动下拉菜单功能实例【测试可用】  # js实现三级联动效果(简单易懂)  # js实现简单的二级联动效果  # js实现年月日表单三级联动  # JS实现的五级联动菜单效果完整实例  # JS中使用new Option()实现时间联动效果  # 请选择  # 下拉框  # 在此  # 小编  # 是个  # 很好  # 只需  # 要在  # 半天  # 可以通过  # 给大家  # 找了  # 力不从心  # 解决方法  # 很方便  # 所述  # 给我留言  # 感谢大家  # 就可以  # 全选 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何生成API文档?(Swagger/OpenAPI教程)  html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】  如何在阿里云虚拟服务器快速搭建网站?  如何快速查询域名建站关键信息?  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  Laravel如何构建RESTful API_Laravel标准化API接口开发指南  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  JavaScript如何操作视频_媒体API怎么控制播放  如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出  如何快速查询网址的建站时间与历史轨迹?  南京网站制作费用,南京远驱官方网站?  html如何与html链接_实现多个HTML页面互相链接【互相】  教学论文网站制作软件有哪些,写论文用什么软件 ?  网站建设要注意的标准 促进网站用户好感度!  如何续费美橙建站之星域名及服务?  如何在Tomcat中配置并部署网站项目?  SQL查询语句优化的实用方法总结  Laravel如何生成和使用数据填充?(Seeder和Factory示例)  如何用虚拟主机快速搭建网站?详细步骤解析  Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】  bing浏览器学术搜索入口_bing学术文献检索地址  Laravel如何使用Eloquent进行子查询  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  如何在七牛云存储上搭建网站并设置自定义域名?  如何用PHP快速搭建CMS系统?  laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法  Laravel如何使用Sanctum进行API认证?(SPA实战)  Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用  如何实现javascript表单验证_正则表达式有哪些实用技巧  西安专业网站制作公司有哪些,陕西省建行官方网站?  php结合redis实现高并发下的抢购、秒杀功能的实例  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件  微信小程序 配置文件详细介绍  如何确保FTP站点访问权限与数据传输安全?  香港服务器选型指南:免备案配置与高效建站方案解析  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  Laravel如何与Pusher实现实时通信?(WebSocket示例)  百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭  b2c电商网站制作流程,b2c水平综合的电商平台?  微信小程序 wx.uploadFile无法上传解决办法  jQuery中的100个技巧汇总  Python数据仓库与ETL构建实战_Airflow调度流程详解  什么是JavaScript解构赋值_解构赋值有哪些实用技巧  Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】  米侠浏览器网页背景异常怎么办 米侠显示修复  中山网站推广排名,中山信息港登录入口?  Laravel如何实现URL美化Slug功能_Laravel使用eloquent-sluggable生成别名【方法】  Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道