.select2-container .select2-choice {
height: 34px;
line-height: 34px;
}
 .自定义 组件高度
在css 里面设置 .select2-container .select2-choice {
height: 34px;
line-height: 34px;
}
 .自定义宽度 和 监听 change事件(coffeescript语法)

 $('#time_scope_scope_id').select2({'width':'200px'}).on("change", (e) ->
refresh_tab()
)

http://blog.csdn.net/remote_roamer/article/details/47732349

select2 4.02 实现类似google搜索条的 ajax remote data功能

1,构建一个 select2 的 下拉框,
这里注意,不能用input 来构建了

 <select id="park_code"></select>  

2,初始化成select2 对象

 $("#park_code").select2({
placeholder: "选择一个停车场",
ajax: {
url: "/park_seek/",
dataType: 'json',
delay: ,
data: function (params) {
return {
q: params.term, // search term
page: params.page
};
},
processResults: function (data, page) {
// parse the results into the format expected by Select2.
// since we are using custom formatting functions we do not need to
// alter the remote JSON data
console.debug("ajax返回的对象是:")
console.debug(data.items)
return {
results: data.items
};
},
cache: true
},
escapeMarkup: function (markup) {
console.debug(markup)
return markup;
}, // let our custom formatter work
minimumInputLength: , //至少输入多少个字符后才会去调用ajax
maximumInputLength: , //最多能输入多少个字符后才会去调用ajax
minimumResultsForSearch: ,
width: "260px",
templateResult: formatRepo,
templateSelection: formatRepoSelection,
}); $("#park_code").on("change",function (e){
can_analyse();
})
/* 这里2个函数是用于查询到内容后,显示在select2的下拉框里面 */
function formatRepo (repo) {
if (repo.loading) return repo.text;
repo.text = repo.name
repo.id = repo.code
var markup = '<div class="clearfix">' +
'<div class="col-sm-4">' + repo.code + '</div>' +
'<div class="col-sm-20">' + repo.name + '</div>' +
'</div>'; return markup;
} function formatRepoSelection (repo) {
repo.selected = true;
repo.code = repo.id
repo.name = repo.text
if(repo.code == null || repo.code == ""){
repo.text = '请选择一个停车场'
repo.name = repo.text
}
$("#park_name").val(repo.name);
console.debug(repo);
return repo.code ;
}
/* 这里2个函数是用于查询到内容后,显示在select2的下拉框里面 end */

3.通过其他的js函数对这个select2 进行赋值

$("#park_code").empty().append('<option id="'+code+'" value="'+code+'">'+name+'</option>').trigger('change');  

注意:这里要trigger 这个 change 的 事件,这样才会调用formatRepoSelection 这个方法,并且刷新UI。

后台提供的json对象
{
items:
[
{
id: "",
code: "",
name: "大树路4"
},
{
id: "",
code: "",
name: "大树路2"
},
{
id: "",
code: "",
name: "大树路1"
},
{
id: "",
code: "",
name: "大树路3"
}
]
}
注意几个问题:
.如果返回的json里面没有id。则会出现查询的对象无法选择的问题。处理方式,就是在返回的josn对象里面加入 id 这个唯一标示
相关内容http://kanpiaoxue.iteye.com/blog/2153468
.formatRepoSelection函数中,缺省的是处理repo 对象 的 id 和 text 这2个属性,而我这里定义的json是是code 和 name,所以需要把code 和 name 复制到 id 和 text里面。否则没法显示在界面上。另外一种简单的处理方法,可以把json对象直接变成 id 和 text的结构。这样就不用定制 select2 里面的方法了。

select2的更多相关文章

  1. 利用Select2优化@Html.ListBoxFor显示,学会用MultiSelectList

    最近需要用到多选框,Asp.Net MVC自带的@Html.ListBox或@Html.ListBoxFor的显示效果太差,于是找到了Select2进行优化,并正式了解了多选框的操作方法. 首先介绍多 ...

  2. ajax获取json数据 for select2

    json数据“a.json” [ { "id": "1", "text": "张三" }, { "id&quo ...

  3. select2 demo

    https://select2.github.io/examples.html 一大堆的坑: 1. 不同版本之间貌似不兼容,对应版本看对应的文档. 2. 4.0.3版本: 1). 自定义渲染的opti ...

  4. 解决select2在bootstrap的modal中默认不显示的问题

    在Bootstrap中的Modal,select2插件会有不显示,因为其z-index小于modal,还有另外一个问题是,修正z-index之后,select2不会自动失去焦点的问题.代码解决如下: ...

  5. select2 清空数据

    最近用select2插件,发现用jquery重置不好使,最后搜罗了一把发现下面这个方法可以间接的实现,有空还得看看插件的API $('#integratorId').select2('data', n ...

  6. select2插件不兼容ie7,ie7下样子显示错位问题

    1.源文件(未修改) select2.min.css.select2.min.js 2.ie7下显示样式: 3.ie8下显示样式: 4.经查看发现ie7下对一些属性的解析和ie8不同,需对ie7另作h ...

  7. select2的相关问题

    在弹出框中无法使用select2的问题: 通常情况下,使用select2只需要在加载相关js和css后,添加如下代码即可: $("#selectId").select2(); 但如 ...

  8. bootstrap与Select2使用小结

    这个select2组件的功能确实很强大,可以将图片放入到select里面随着文字一起显示. 组件的下载地址以及API说明地址: 1.Select2使用示例地址:https://select2.gith ...

  9. 解决Select2控件不能在jQuery UI Dialog中不能搜索的bug

    本文使用博客园Markdown编辑器进行编辑 1.问题呈现 项目中使用了jQuery UI的Dialog控件,一般用来处理需要提示用户输入或操作的简单页面.逻辑是修改一个广告的图片和标题. 效果截图如 ...

  10. JS组件系列——Bootstrap Select2组件使用小结

    前言:在介绍select组件的时候,博主之前分享过一篇JS组件系列——两种bootstrap multiselect组件大比拼,这两个组件的功能确实很强大,只可惜没有图文结合的效果(也就是将图片放入到 ...

随机推荐

  1. 用jQuery调用微信api生成二维码

    其实这个,也没什么实际用途,只能测试一下api能不能用. 1. 用Chrome打开一个https://api.weixin.qq.com/页面,会返回一个错误信息,忽略不管,F12打开控制台 2. 控 ...

  2. CBOW Model Formula Deduction

    Paper Reference: word2vec Parameter Learning Explained 1. One-word context Model In our setting, the ...

  3. Docker change directory

    https://forums.docker.com/t/how-do-i-change-the-docker-image-installation-directory/1169/2 How do I ...

  4. bootstrap标签引入地址

    http://www.bootcdn.cn/bootstrap/ <link rel="stylesheet" href="http://apps.bdimg.co ...

  5. SSH原理与运用(一):远程登录

    SSH是每一台Linux电脑的标准配置. 随着Linux设备从电脑逐渐扩展到手机.外设和家用电器,SSH的使用范围也越来越广.不仅程序员离不开它,很多普通用户也每天使用. SSH具备多种功能,可以用于 ...

  6. 查看linux机器是32位还是64位的方法

    file /sbin/init 或者 file /bin/ls/sbin/init: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dyna ...

  7. e_msg_c_as_register_req-注册存储过程

    TOP:BEGIN #Routine body goes here... IF EXISTS ( SELECT * FROM `global_account` WHERE `plantform_id` ...

  8. Android学习笔记——download

    该工程的功能是实现从网上的链接下载一个lrc文件和一个mp3文件 以下代码是MainActivity.java中的代码 package com.example.download; import com ...

  9. 《CSS3实战》读书笔记 第2章 层叠样式表(CSS)

    ## 层叠样式表 本章将阐述CSS的基本规则. ### 解构CSS 所谓CSS,由选择器(selector)和声明块(declaration block)组成.再进一步细分,每个声明包括了属性和值. ...

  10. Behavior Tree

    http://www.craft.ai/blog/bt-101-behavior-trees-grammar-basics/ https://github.com/libgdx/gdx-ai/wiki ...