.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. COGS 577 蝗灾

    传送门 时间限制:2 s 内存限制:128 MB DESCRIPTION C国国土辽阔,地大物博......但是最近却在闹蝗灾..... 我们可以把C国国土当成一个W×W的矩阵,你会收到一些诸如(X, ...

  2. POJ1741:tree

    传送门 时隔一个月再次写点分治,比上一次要深入理解很多了.(虽然代码还是写不熟 模板题,不多说 //POJ 1741 //by Cydiater //2016.9.22 #include <cs ...

  3. 八数码问题(紫薯P199)

    #include <algorithm> #include <cstdio> #include <cstring> #include <iostream> ...

  4. Hibernate Hql 总结

    1.from子句 Hibernate中最简单的查询语句的形式如下: from eg.Cat该子句简单的返回eg.Cat类的所有实例. 通常我们不需要使用类的全限定名, 因为 auto-import(自 ...

  5. zabbix使用介绍

    zabbix自定义监控项 1.创建主机组,可以根据redis.mysql.web等创建对于的主机组 2.创建主机 3.创建Screens 4.自定义监控项 zabbix_agentd.conf配置文件 ...

  6. C#最简单最完整的webservice实例

    http://fyinthesky.blog.163.com/blog/static/3555251720110115227337/ 我做java,但最近接触crm所以必须研究一下C#中的webser ...

  7. java的对象的总结:(PO,VO,DAO,BO,POJO)

    一.PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象.最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合.PO中应该不包含任何对数 ...

  8. NSXMLParser解析本地.xml数据(由于like7xiaoben写的太好了,我从她那里粘贴过来的)

    NSXMLParser解析简要说明 .是sax方法解析 .需要创建NSXMLParser实例 (alloc) 并创建解析器 (initWithData:) 为解析器定义委托 (setDelegate: ...

  9. AngularJs:String类型和JSON相互转换

    最近一周做了一个页面,制作的过程中遇到各种问题,从中可以看出本人的js基础还不够扎实,angularjs也只是刚入门的水平,现在将制作过程中遇到的问题一一汇总,方便以后查阅. 一.String类型和J ...

  10. JQuery------如何判断当前点击的是否是哪个类

    $(document).ready(function () { $("html").click(function (e) { if (e.target == $(".ad ...