JS组件中bootstrap multiselect两大组件较量


Posted in Javascript onJanuary 26, 2016

两个这种组件,大体样式和功能基本相同,本文就来带领大家看看这两个组件的用法。

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

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

二、Multiple-select组件
1、组件说明
这个组件需要的浏览器支持如下:

  • IE 7+
  • Chrome 8+
  • Firefox 10+
  • Safari 3+
  • Opera 10.6+

还好,一般主流的浏览器都能够支持。

2、效果预览
 (1)原始的MultiSelect

JS组件中bootstrap multiselect两大组件较量

(2)初始化的Multiple Select

JS组件中bootstrap multiselect两大组件较量

JS组件中bootstrap multiselect两大组件较量

 JS组件中bootstrap multiselect两大组件较量

(3)设置选中和禁用

JS组件中bootstrap multiselect两大组件较量

(4)设置分组

JS组件中bootstrap multiselect两大组件较量

(5)设置未选中的初始值:请选择

JS组件中bootstrap multiselect两大组件较量

(6)初始化成单选

JS组件中bootstrap multiselect两大组件较量

(7)设置组件的筛选功能

JS组件中bootstrap multiselect两大组件较量

JS组件中bootstrap multiselect两大组件较量

3、代码示例
既然是bootstrap的组件,肯定需要bootstrap的支持。我们来看看需要引用的js

@*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" />

 @*页面js*@
 <script src="~/Scripts/Home/Index_wenzhixin.js"></script>

(1)原始的初始化

<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="0">未排产</option>
    <option value="5">已排产</option>
    <option value="10">已锁定</option>
    <option value="25">在制</option>
    <option value="20">订单提交</option>
    <option value="30">订单删除</option>
    <option value="50">订单报废</option>
    </select>
   </div>
$(function () {
 $('#sel_search_orderstatus').multipleSelect();
})

(2)设置选中和禁用

<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">
    ......
    </select>
   </div>
$(function () {
 $('#sel_search_orderstatus2').multipleSelect();
})

(3)设置分组和初始值

<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="0">未排产</option>
    </optgroup>
    <optgroup label="已上线">
     <option value="5">已排产</option>
     <option value="10">已锁定</option>
     <option value="25">在制</option>
     <option value="20">订单提交</option>
    </optgroup>
    <optgroup label="异常">
     <option value="30">订单删除</option>
     <option value="50">订单报废</option>
    </optgroup>
    </select>
   </div>

$(function () {
 $('#sel_search_orderstatus3').multipleSelect({
 placeholder: "请选择"
 });
})

(4)单选

<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">
    .......
    </select>
   </div>
$(function () {
 $('#sel_search_orderstatus4').multipleSelect({
 placeholder: "请选择",
 single: true
 });
})

(5)筛选

<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">
    ......
    </select>
   </div>
$(function () {
 $('#sel_search_orderstatus5').multipleSelect({
 placeholder: "请选择",
 filter: true
 });
})

(6)如果你的multiple select不想要默认的初始值,可以在初始化的时候去设置他们的值。如下是源码里面的默认参数列表。

JS组件中bootstrap multiselect两大组件较量

三、Bootstrap-multiselect组件
1、代码示例
初始化的过程和上面的类似,首先引用文件。

<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" />

 <script src="~/Scripts/Home/Index_davidstutz.js"></script>

(1)最原始的初始化

<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="0">未排产</option>
    <option value="5">已排产</option>
    <option value="10">已锁定</option>
    <option value="25">在制</option>
    <option value="20">订单提交</option>
    <option value="30">订单删除</option>
    <option value="50">订单报废</option>
    </select>
   </div>

$(function () {
 $('#sel_search_orderstatus').multiselect();
});

(2)设置选中和禁用

<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="0">未排产</option>
    <option value="5" selected="selected">已排产</option>
    <option value="10" selected="selected">已锁定</option>
    <option value="25" disabled="disabled">在制</option>
    <option value="20" disabled="disabled">订单提交</option>
    <option value="30" disabled="disabled" selected="selected">订单删除</option>
    <option value="50">订单报废</option>
    </select>
   </div>

(3)分组

<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="0">未排产</option>
    </optgroup>
    <optgroup label="已上线">
     <option value="5">已排产</option>
     <option value="10" selected="selected">已锁定</option>
     <option value="25" disabled="disabled">在制</option>
     <option value="20">订单提交</option>
    </optgroup>
    <optgroup label="异常">
     <option value="30">订单删除</option>
     <option value="50">订单报废</option>
    </optgroup>
    </select>
   </div>

$(function () {
 $('#sel_search_orderstatus3').multiselect({
 enableCollapsibleOptGroups: true
 });
});

其他效果的代码就不一一展示了,代码很简单,看看文档基本没啥问题。

如果大家还想深入学习,可以点击这里进行学习,再为大家附两个精彩的专题:Bootstrap学习教程 Bootstrap实战教程

以上就是两种多选组件的效果展示以及简单的代码示例。至于哪种更好全凭自己的感觉,使用起来都挺简单,功能基本类似,希望这篇文章对大家的学习有所帮助。

Javascript 相关文章推荐
Javascript 日期处理之时区问题
Oct 08 Javascript
javascript对象的使用和属性操作示例详解
Mar 02 Javascript
php析构函数的具体用法小结
Mar 11 Javascript
iframe调用父页面函数示例详解
Jul 17 Javascript
详细分析JavaScript函数定义
Jul 16 Javascript
jQuery CSS3自定义美化Checkbox实现代码
May 12 Javascript
详解用node编写自己的cli工具
May 23 Javascript
JS实现简易的图片拖拽排序实例代码
Jun 09 Javascript
11行JS代码制作二维码生成功能
Mar 09 Javascript
vue-router+nginx 非根路径配置方法
Jun 30 Javascript
JavaScript惰性求值的一种实现方法示例
Jan 11 Javascript
解决vue组件销毁之后计时器继续执行的问题
Jul 21 Javascript
JS组件Form表单验证神器BootstrapValidator
Jan 26 #Javascript
jQuery实现的指纹扫描效果实例(附演示与demo源码下载)
Jan 26 #Javascript
Bootstrap树形组件jqTree的简单封装
Jan 25 #Javascript
javascript实现2016新年版日历
Jan 25 #Javascript
基于javascript实现图片左右切换效果
Jan 25 #Javascript
JavaScript实现获取某个元素相邻兄弟节点的prev与next方法
Jan 25 #Javascript
JavaScript事件类型中焦点、鼠标和滚轮事件详解
Jan 25 #Javascript
You might like
一些星际专用术语解释
2020/03/04 星际争霸
PHP缩略图等比例无损压缩,可填充空白区域补充色
2011/06/10 PHP
PHP程序中使用adodb连接不同数据库的代码实例
2015/12/19 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
Ajax中解析Json的两种方法对比分析
2015/06/25 Javascript
js clearInterval()方法的定义和用法
2015/11/11 Javascript
NodeJS实现阿里大鱼短信通知发送
2016/01/17 NodeJs
JavaScript每天必学之数组和对象部分
2016/09/17 Javascript
基于JavaScript实现右键菜单和拖拽功能
2016/11/28 Javascript
jQuery图片轮播功能实例代码
2017/01/29 Javascript
vue-cli 3.x 修改dist路径的方法
2018/09/19 Javascript
Vue父子组件之间的通信实例详解
2018/09/28 Javascript
AngularJS 多指令Scope问题的解决
2018/10/25 Javascript
微信小程序实现限制用户转发功能的实例代码
2020/02/22 Javascript
Vue axios与Go Frame后端框架的Options请求跨域问题详解
2020/03/03 Javascript
微信小程序保存图片到相册权限设置
2020/04/09 Javascript
vue项目中播放rtmp视频文件流的方法
2020/09/17 Javascript
解决VUE 在IE下出现ReferenceError: Promise未定义的问题
2020/11/07 Javascript
pycharm 使用心得(三)Hello world!
2014/06/05 Python
Python松散正则表达式用法分析
2016/04/29 Python
使用python实现knn算法
2017/12/20 Python
Python代码缩进和测试模块示例详解
2018/05/07 Python
selenium3+python3环境搭建教程图解
2018/12/07 Python
利用python提取wav文件的mfcc方法
2019/01/09 Python
python实现猜拳小游戏
2020/04/05 Python
Tensorflow与Keras自适应使用显存方式
2020/06/22 Python
计算机专业毕业生求职信分享
2013/12/24 职场文书
大学自我鉴定范文
2013/12/26 职场文书
超市开业庆典策划方案
2014/05/14 职场文书
技校毕业生自荐信
2014/06/03 职场文书
企业仓管员岗位职责
2014/06/15 职场文书
党的群众路线教育实践活动对照检查材料(教师)
2014/09/24 职场文书
2015年初中生自我评价范文
2015/03/03 职场文书
2016年寒假社会实践活动总结
2015/03/27 职场文书
超市主管竞聘书
2015/09/15 职场文书
你真的会用Mysql的explain吗
2022/03/31 MySQL