插件官网:https://select2.github.io/examples.html

  页面引入:

// 页面顶部
<link rel="stylesheet" type="text/css" href="css/select2.min.css"> // 页面底部
// 依赖jQuery,引入jQuery之后,还需引入以下js文件
<script type="text/javascript" src="js/select2/select2.full.min.js"></script>
<script type="text/javascript" src="js/select2/lang/zh-CN.js"></script>

  调用select2

var util = {
select2: function(options){
select2(options); //将输入的值作为其值
var inputAsValue = function($target, value){
var id = "select2-" + $target.attr("id") + "-container";
$("#advertiser_name_input").val(value).keyup();
$("#"+id).text(value);
}; function select2(arg) {
var requireName = arg.requireName;
arg.target.select2({
placeholder:arg.placeholder, // 文本框的提示信息
language: 'zh-CN',
         // 若不想引入zh-CN.js文件,可注释上一句,改为下面的即可
         /*
          language: {

            noResults: function() {
              return"未找到结果"
            } ,searching: function() {
              return"搜索中…"
            }

          }
         */
   minimumInputLength: 1, // 至少输入n个字符,才去加载数据;若设置为0,则点击选择框,不用输入内容,就去加载数据;默认为0
maximumInputLength: 100, // 限制最大字符,以防坑
                data: options.data,
ajax: {
url: arg.url,
dataType: 'json',
method: 'post',
quietMillis:100,
delay: 250,
data: function (params) {
var data = {}, id;
data[arg.requireName] = params.term; // 查询的关键字
// data['page'] = params.page;
return $.extend(true, data, arg['other']);
},
processResults: function (result, params) {
            // params.page = params.page || 1;
if(result && result.flag && !$.isEmptyObject(result.data)){
var resultData = result.data,
selectData = [], selectObj = {};
for(var i=0,len=resultData.length; i<len; i++){
selectObj = {
'id': resultData[i]['id'] || '',
'text': resultData[i]['name'] || '',
'industry_id': resultData[i]['industry_id'] || ''
};
selectData.push(selectObj);
}
return {
/* pagination: {
more: (params.page * 30) < 100 //data.total_count
},*/
results: selectData
};
}else{
var noData = [
{id:0,text:'暂无数据'}
];
return {
results:noData
};
}
},
cache: true
},
escapeMarkup: function (markup) { return markup; }
});
arg.target.on("change", function(e){
options.change && options.change();
});
}
}
}; // 调用
util.select2({
target: $('#select'),
url: pageInfo.activityNameUrl,
requireName: 'key',
callback: '',
data: {'id', 11},
change: function(){
var $select = $('#select');
var data = $select.select2("data")[0];
// 其余操作
}
});

  注意:注释的代码可以实现分页功能, 鼠标拖动滚动条往下滚时,再去请求再显示下一页的效果;但是需要后台支持,根据请求参数page的页数,返回响应的数据。

  设置默认值或回填值:

 if(selectId !=''){
$("#select").html('<option value="'+selectId +'">'+selectVal+'</option>').trigger('change');
}

  显示全部:

名称:<select class="select-w100 select2" name="select" id="select">
<option value="">全部</option>
</select>

  获取值(多选值,默认用逗号分隔):

获取多选值
$('#save-btn').click(function(){
var city = $('#city').val();
var cityDesc = $('#city option:selected').text();
})

  特殊地方:select2下拉框插件,可以做多选,但是每选一次就会收起一次下拉。
  逐个勾选,多选完后,点击下拉框外面的区域再收起。

  可以设置:closeOnSelect: false

select2插件使用小记的更多相关文章

  1. select2插件使用小记2 - 多选联动 - 笔记

    这是select2插件使用的第二篇,可参考第一篇 select2插件使用小记.上一篇主要是关于基本的使用,这篇主要是关于多选,及联动的.侧重点不同. 效果图如下: 遵从W3C标准:结构.样式.行为.以 ...

  2. select2插件

    引入select2插件<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.min. ...

  3. 基于Metronic的Bootstrap开发框架经验总结(3)--下拉列表Select2插件的使用

    在上篇<基于Metronic的Bootstrap开发框架经验总结(2)--列表分页处理和插件JSTree的使用>介绍了数据的分页处理,使用了Bootstrap Paginator插件,另外 ...

  4. Metronic_下拉列表Select2插件的使用

    这个插件是基于Select的扩展插件,能够提供更加丰富的功能和用户体验,它的github官网地址为:https://select2.github.io/,具体的使用案例,可以参考地址:https:// ...

  5. jQuery的下拉选select2插件用法

    1转自:https://www.jb51.net/article/95561.htm 用了这么久的Select2插件,也该写篇文章总结总结.当初感觉Select2不是特别好用,但又找不到比它更好的下拉 ...

  6. select2插件用法

    1.修改默认查询方法,使其可以根据value查询 this.element.select2({ allowClear: true, matcher: function (term, text, ele ...

  7. Select2插件的隐藏、设置宽度

    <select id="selPrinvice" class="Select2 select2-hidden-accessible" style=&quo ...

  8. 01:jQuery的下拉选select2插件用法

    1.1 select2插件基本使用 1.下载select2插件 1. 下载地址:https://github.com/select2/select2 2.官网地址:https://select2.or ...

  9. 在select2插件中append下拉选,点击没反应的解决

    今天前端大佬帮我解决了一个棘手的问题:克隆了已有系统的网页,尝试把复制下来的html改造成jsp.基本功能正常,然而点击新增按钮,出来的行无法点击下拉选,控制台也没报错. 项目用的是jeesite2. ...

随机推荐

  1. java学习第四周

    这是暑假第四周,这周我继续学习了Java的基础知识. 了解到Java的类继承,学习到Java的接口的相关知识Java的每一个类都有且仅有一个直接父类,没有多重继承,但是接口可以继承多个,如果把接口看做 ...

  2. js-day02

    1.数据类型转换2.函数3.分支结构*******************************1.数据类型转换 数据类型:number,string,boolean,null,undefined ...

  3. 2019.01.08 codeforces 1009F. Dominant Indices(长链剖分)

    传送门 长链剖分模板题. 题意:给出一棵树,设fi,jf_{i,j}fi,j​表示iii的子树中距离点iii距离为jjj的点的个数,现在对于每个点iii要求出使得fif_ifi​取得最大值的那个jjj ...

  4. Echarts的使用方法

    效果图: 1. 在echarts官网下载包,解压后,将文件Echarts\echarts-2.2.7\echarts-2.2.7\doc\example\www\js\echarts.js文件拷贝,放 ...

  5. 一类n阶微分方程转1阶微分方程组

  6. Win7 VS2013环境编译Lua5.3.1

    主要参考这篇文章,原文有几个错误顺便改正了. 在Windows下使用Visual Studio编译Lua5.3 写本文时Lua官方网站放出的新版本为5.3.1,然后我不知道为啥,神奇的国内不能访问Lu ...

  7. Spring的下载与安装

    Spring是一个独立的框架,不依赖于任何Web服务器或容器.它既可在独立的JavaSE项目中使用,也可以在Java Web项目中使用. 下载和安装Spring框架可按如下步骤进行: 1.登录http ...

  8. 返回结点值为e的二叉树指针

    题意为,如果二叉树某结点的值为e(假定是整型二叉树),返回这个结点的指针.初看这道题,联想到二叉树可以很简单的遍历,直接返回这个指针不就行了吗?如下图所示,假如要返回值为3的结点指针: 设计好了一个函 ...

  9. idea操作快捷键

    Ctrl+Shift + Enter,语句完成“!”,否定完成,输入表达式时按 “!”键Ctrl+E,最近的文件Ctrl+Shift+E,最近更改的文件Shift+Click,可以关闭文件Ctrl+[ ...

  10. 基于WebGL的三维的物联网平台技术

    参加工作三年了,从一个搞调试的民工进阶为程序员,收获还是有那么一点的.慢慢讲一些. 去年在网上发现了https://hightopo.com/cn-index.html图扑软件的基于WebGL的三维j ...