组件说明以及API
1、第一个组件——multiple-select。这个组件风格简单、文档全、功能强大。但是觉得它选中的效果不太好。关于它的效果展示,我们放在后面。

2、第二个组件——bootstrap-multiselect。这个组件风格和第一个非常相似,文档也挺全面。

既然是bootstrap的组件,肯定需要bootstrap的支持。我们来看看需要引用的js

Bootstrap-multiselect组件

<script src="~/Scripts/jquery-1.10.2.min.js"></script>

 <script src="~/Content/bootstrap/js/bootstrap.min.js"></script>
<link href="~/Content/bootstrap/css/bootstrap.min.css" rel="stylesheet" /> <script src="~/Content/multiselect_davidstutz/js/bootstrap-multiselect.js"></script>
<link href="~/Content/multiselect_davidstutz/css/bootstrap-multiselect.css" rel="stylesheet" />
 <form id="formSearch" class="form-horizontal">
<div class="form-group">
<label class="control-label col-xs-1">原始Select</label>
<div class="col-xs-2" style="margin-top:7px;">
<select style="width:150px" multiple="multiple">
<option value="">未排产</option>
<option value="">已排产</option>
<option value="">已锁定</option>
<option value="">在制</option>
<option value="">订单提交</option>
<option value="">订单删除</option>
<option value="">订单报废</option>
</select>
</div> <label class="control-label col-xs-1" for="sel_search_orderstatus">多选站点</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus" style="width:150px" multiple="multiple">
<option value="">未排产</option>
<option value="">已排产</option>
<option value="">已锁定</option>
<option value="">在制</option>
<option value="">订单提交</option>
<option value="">订单删除</option>
<option value="">订单报废</option>
</select>
</div> <label class="control-label col-xs-1" for="sel_search_orderstatus2">disabled Select</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus2" style="width:150px" multiple="multiple">
<option value="">未排产</option>
<option value="" selected="selected">已排产</option>
<option value="" selected="selected">已锁定</option>
<option value="" disabled="disabled">在制</option>
<option value="" disabled="disabled">订单提交</option>
<option value="" disabled="disabled" selected="selected">订单删除</option>
<option value="">订单报废</option>
</select>
</div> <label class="control-label col-xs-1" for="sel_search_orderstatus3">分组</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus3" style="width:150px" multiple="multiple">
<optgroup label="未上线">
<option value="">未排产</option>
</optgroup>
<optgroup label="已上线">
<option value="">已排产</option>
<option value="" selected="selected">已锁定</option>
<option value="" disabled="disabled">在制</option>
<option value="">订单提交</option>
</optgroup>
<optgroup label="异常">
<option value="">订单删除</option>
<option value="">订单报废</option>
</optgroup>
</select>
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-1" for="sel_search_orderstatus4">单选</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus4">
<option value="">未排产</option>
<option value="">已排产</option>
<option value="">已锁定</option>
<option value="">在制</option>
<option value="">订单提交</option>
<option value="">订单删除</option>
<option value="">订单报废</option>
</select>
</div> <label class="control-label col-xs-1" for="sel_search_orderstatus5">筛选</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus5" style="width:150px" multiple="multiple">
<option value="">未排产</option>
<option value="">已排产</option>
<option value="">已锁定</option>
<option value="">在制</option>
<option value="">订单提交</option>
<option value="">订单删除</option>
<option value="">订单报废</option>
</select>
</div> <label class="control-label col-xs-1" for="sel_search_orderstatus">设置文本</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus6" style="width:150px" multiple="multiple">
<option value="">未排产</option>
<option value="">已排产</option>
<option value="">已锁定</option>
<option value="">在制</option>
<option value="">订单提交</option>
<option value="">订单删除</option>
<option value="">订单报废</option>
</select>
</div>
</div>
</form>
$(function () {

    $('#sel_search_orderstatus').multiselect();

    $('#sel_search_orderstatus2').multiselect();

    $('#sel_search_orderstatus3').multiselect({
enableCollapsibleOptGroups: true
}); $('#sel_search_orderstatus4').multiselect(); $('#sel_search_orderstatus5').multiselect({
enableFiltering: true
}); $('#sel_search_orderstatus6').multiselect({
nonSelectedText: '多项选择',
nSelectedText: '项',
allSelectedText: '所有项',
selectAllText: '所有项'
});
});

效果:

multiple-select组件:

@*Jquery*@
<script src="~/Scripts/jquery-1.10.2.min.js"></script> @*bootstrap*@
<script src="~/Content/bootstrap/js/bootstrap.min.js"></script>
<link href="~/Content/bootstrap/css/bootstrap.min.css" rel="stylesheet" /> @*multiple-select*@
<script src="~/Content/multiselect_wenzhixin/multiple-select-master/multiple-select.js"></script>
<link href="~/Content/multiselect_wenzhixin/multiple-select-master/multiple-select.css" rel="stylesheet" />
  <div class="panel-body" style="padding:0px;">
<div class="panel panel-default">
<div class="panel-heading">查询条件</div>
<div class="panel-body">
<form id="formSearch" class="form-horizontal">
<div class="form-group">
<label class="control-label col-xs-1">原始Select</label>
<div class="col-xs-2" style="margin-top:7px;">
<select style="width:150px" multiple="multiple">
<option value="">未排产</option>
<option value="">已排产</option>
<option value="">已锁定</option>
<option value="">在制</option>
<option value="">订单提交</option>
<option value="">订单删除</option>
<option value="">订单报废</option>
</select>
</div> <label class="control-label col-xs-1" for="sel_search_orderstatus">多选站点</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus" style="width:150px" multiple="multiple">
<option value="">未排产</option>
<option value="">已排产</option>
<option value="">已锁定</option>
<option value="">在制</option>
<option value="">订单提交</option>
<option value="">订单删除</option>
<option value="">订单报废</option>
</select>
</div> <label class="control-label col-xs-1" for="sel_search_orderstatus2">disabled Select</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus2" style="width:150px" multiple="multiple">
<option value="">未排产</option>
<option value="" selected="selected">已排产</option>
<option value="" selected="selected">已锁定</option>
<option value="" disabled="disabled">在制</option>
<option value="" disabled="disabled">订单提交</option>
<option value="" disabled="disabled" selected="selected">订单删除</option>
<option value="">订单报废</option>
</select>
</div> <label class="control-label col-xs-1" for="sel_search_orderstatus3">分组</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus3" style="width:150px" multiple="multiple">
<optgroup label="未上线">
<option value="">未排产</option>
</optgroup>
<optgroup label="已上线">
<option value="">已排产</option>
<option value="">已锁定</option>
<option value="">在制</option>
<option value="">订单提交</option>
</optgroup>
<optgroup label="异常">
<option value="">订单删除</option>
<option value="">订单报废</option>
</optgroup>
</select>
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-1" for="sel_search_orderstatus4">单选</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus4" style="width:150px" multiple="multiple">
<option value="">未排产</option>
<option value="">已排产</option>
<option value="">已锁定</option>
<option value="">在制</option>
<option value="">订单提交</option>
<option value="">订单删除</option>
<option value="">订单报废</option>
</select>
</div> <label class="control-label col-xs-1" for="sel_search_orderstatus5">筛选</label>
<div class="col-xs-2" style="margin-top:7px;">
<select id="sel_search_orderstatus5" style="width:150px" multiple="multiple">
<option value="">未排产</option>
<option value="">已排产</option>
<option value="">已锁定</option>
<option value="">在制</option>
<option value="">订单提交</option>
<option value="">订单删除</option>
<option value="">订单报废</option>
</select>
</div>
</div>
</form>
</div>
</div>
</div>
$(function () {

    $('#sel_search_orderstatus').multipleSelect();

    $('#sel_search_orderstatus2').multipleSelect();

    $('#sel_search_orderstatus3').multipleSelect({
placeholder: "请选择"
}); $('#sel_search_orderstatus4').multipleSelect({
placeholder: "请选择",
single: true
}); $('#sel_search_orderstatus5').multipleSelect({
placeholder: "请选择",
filter: true
});
})

组件效果:

比较重要的参数说明:

  • isOpen

类型: boolean

是否打开下拉列表。

默认值为 false 。

  • placeholder

类型: string

显示默认的提示信息。

默认值为 '' 。

  • selectAll

类型: boolean

是否显示全选复选框。

默认值为 true 。

  • selectAllText

类型: string

全选复选框的显示内容。

默认值为 Select all 。

  • multiple

类型: boolean

是否在一行中显示多个选项。

默认值为 false 。

  • multipleWidth

类型: integer

一行中每个选项的宽度。

默认值为 80 。

  • single

类型: boolean

是否只允许你选择一行。

默认值为 false 。

  • position

类型: string

定义下拉列表的位置,只能是 bottom 或者  top 。

默认值为 bottom .

  • filter

类型: boolean

是否开启过滤功能。

默认值为 false 。

  • width

类型: integer

定义下拉列表的宽度。

默认值为 undefined 。 默认与 select 的宽度相同。

  • maxHeight

类型: integer

下拉列表的最大高度。

默认值为 250 。

常用事件:

  • onOpen

当下拉列表被打开时触发。

  • onClose

当下拉列表被关闭时触发。

  • onCheckAll

点击全选或者调用 “checkall” 方法时触发。

  • onUncheckAll

点击全不选或者调用 “uncheckall” 方法时触发。

  • onOptgroupClick

点击分组时触发。

  • onClick

点击一个复选框时触发

常用方法:

  • getSelects

获取 Multiple Select 选择内容。

参数: type

类型: string

选择内容的类型,value 或者 text。

默认值为 value 。

  • setSelects

设置 Multiple Select 的内容。

参数: values

类型: array

选择框的内容信息。

  • enable

启用 Multiple Select。

  • disable

禁用 Multiple Select。在这种模式下,不允许用户操作。

  • checkAll

全选所有的复选框。

$('select').multipleSelect('checkAll');
  • uncheckAll

全不选所有的复选框。

$('select').multipleSelect('uncheckAll');
  • refresh

重新加载 Multiple Select。

假如你是通过 AJAX 或者 DOM 来手动添加或者删除 option 选项,可以通过 refresh 方法来重新加载 Multiple Select。

第一个组件是写bootstrap table的主人公 wenzhixin 封装的一个组件—— multiple-select。这个组件风格简单、文档全、功能强大。但是觉得它选中的效果不太好。关于它的效果展示,我们放在后面。还是给出对应的文档API。

Multiple-Select源码主页: https://github.com/wenzhixin/multiple-select

Multiple-Select文档以及Demo: http://wenzhixin.net.cn/p/multiple-select/docs/index.html?locale=zh_CN

2、第二个组件也是在github上面找的—— bootstrap-multiselect 。这个组件风格和第一个非常相似,文档也挺全面。

bootstrap-multiselect源码主页: https://github.com/davidstutz/bootstrap-multiselect

bootstrap-multiselect文档以及Demo: http://davidstutz.github.io/bootstrap-multiselect/

Bootstrap-select多选下拉框实现 :http://www.cnblogs.com/anny0404/p/5329960.html

jQuery multiselect: http://loudev.com/

JS组件系列——Bootstrap Select2组件 (http://www.tuicool.com/articles/nYVn22e)

一、组件说明以及API说明

Select2使用示例地址: https://select2.github.io/examples.html

Select2参数文档说明: https://select2.github.io/options.html

Select2源码: https://github.com/select2/select2

bootstrap multiselect两大组件的更多相关文章

  1. 第二百三十八节,Bootstrap输入框和导航组件

    Bootstrap输入框和导航组件 学习要点: 1.输入框组件 2.导航组件 3.导航条组件 本节课我们主要学习一下Bootstrap的两个个组件功能:输入框组件和导航导航条组件. 一.输入框组件 文 ...

  2. JS组件系列——两种bootstrap multiselect组件大比拼

    前言:今天继续来看看bootstrap的另一个组件:multiselect.记得在项目开始之前,博主项目组几个同事就使用哪些js组件展开过讨论,其中就说到了select组件,由于项目的整体风格使用的b ...

  3. web 前端常用组件【03】Bootstrap Multiselect

    实际的项目网站中或多或少的或用到多选框,我选用的一款是 Bootstrap Multiselect. 官方文档:http://www.kuitao8.com/demo/20140224/1/boots ...

  4. Bootstrap 中的 Typeahead 组件 -- AutoComplete

    Bootstrap 中的 Typeahead 组件就是通常所说的自动完成 AutoComplete,功能很强大,但是,使用上并不太方便.这里我们将介绍一下这个组件的使用. 第一,简单使用 首先,最简单 ...

  5. Java轻量级业务层框架Spring两大核心IOC和AOP原理

    IoC(Inversion of Control): IOC的基本概念是:不创建对象,但是描述创建它们的方式.在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务.容器负责将这些 ...

  6. bootstrap学习之二-组件

    一.bootstrap字体图标 以span的形式出现,通常可以用于一个button或者其他元素的内文本, <span class="glyphicon glyphicon-sort-b ...

  7. Bootstrap中的 Typeahead 组件

    Bootstrap 中的 Typeahead 组件其实就是嵌入到其中的typeahead.js插件,可以完成输入框的自动匹配功能,在通过一些人工的调整基本可以胜任所有的匹配功能和场景,下面介绍下简单的 ...

  8. Flask框架简介,常用扩展包及两大核心

    Flask诞生于2010年,是Armin ronacher(人名)用 Python 语言基于 Werkzeug 工具箱编写的轻量级Web开发框架. Flask 本身相当于一个内核,其他几乎所有的功能都 ...

  9. 通过微信Android和iOS版,看两大系统的差异

    由于设计师或者产品经理使用的移动设备大部分是iPhone,所以在做设计时,容易忽略Android和iOS的差异,按照自己的使用习惯进行设计,导致大部分设计师或产品经理做出的设计都是基于iOS规范或习惯 ...

随机推荐

  1. 烂泥:【解决】ubuntu提示ilanni不在sudoers文件中错误

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 今天在Ubuntu系统中新建一个用户ilanni,添加完毕后.在执行有关sudo的命令时,提示如下的错误信息:ilanni 不在 sudoers 文件中 ...

  2. XSLT

    一.简介 XSLT 是一种用于将 XML 文档转换为 XHTML 文档或其他 XML 文档的语言. XSL(eXtensible Stylesheet Language) -- 可扩展标记语言,主要用 ...

  3. QQ一键登录功能的实现过程

    QQ登录的思路: 当qq登陆成功后,QQ会给我们返回一个唯一的用户标识:openId,当用户授权QQ时,判断 if(已经有openId){ 跳转到登陆后的页面. }else if(没有openId){ ...

  4. 在vscode中使用Git

    用了git最方便的就是比如在公司写了很多代码后回到家打开vscode只需要点击一下pull就能全部同步过来.是不是很方便....毕竟之前我都是拿u盘拷贝回家或者存到云盘再下载下来.. 我这里用的是国内 ...

  5. 【温故而知新-Javascript】使用 DOM 元素

    1. 使用元素对象 HTMLElement对象提供了一组属性,可以用它们来读取和修改被代表的数据.下表介绍了这些属性. 下面代码展示了如何使用表中所列的一些基本属性. <!DOCTYPE htm ...

  6. 边工作边刷题:70天一遍leetcode: day 70

    Design Phone Directory 要点:坑爹的一题,扩展的话类似LRU,但是本题的accept解直接一个set搞定 https://repl.it/Cu0j # Design a Phon ...

  7. 项目回顾1-图片上传-form表单还是base64-前端图片压缩

    第一个项目终于上线了,是一个叫亲青筹的公益众筹平台,微信端,电脑端还有后台界面大部分都是我完成的,几个月过来,感觉收获了很多,觉得要总结一下. 首先想到的是图片上传的问题.在通常表单数据都是ajax上 ...

  8. git版本控制工具(二)----本地版本库的常用操作

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  9. 利用appscan进行自动化定期安全测试

    Appscan的强大众所周知,如果可以自动执行定期安全测试,岂不是美事一件? 事实上,appscan提供了计划扫描的选项,配合windows的计划任务,可以按需设定. 1.打开appscan中的“工具 ...

  10. Dvwa writeup

    DVWA(Dam vulnerable Web Application)是使用PHP+Mysql编写的一套用于常规漏洞教学和漏洞挖掘的一个测试学习程序,在此程序中包含了常见的web方面的漏洞,如命令行 ...