select2组件

select2组件功能强大,包含异步、回调、事件、格式化等内容,下面简单做个例子

<input type="hidden" id="b" class="select2 input-large" name="item"/>

封装组件入口,一般使用$.fn.showItem封装

window.showItem = function (b, url) {
        $("#"+b).select2({
            allowClear: true,
            placeholder:"Select an IG",
            ajax: {
                url: url,
                dataType: ‘json‘,
                quietMillis: 250,
                data: function (term, page) {
                    term = $.trim(term);
                    term = term === ‘‘ ? ‘‘ : term;
                    return {
                        q: term, //search term
                        page: page  // page number
                    }
                },
                results: function (data, page) {
                    var more = (page * 10) < data.total;
                    return { results: data.items, more: more};
                }
            }
        });

其中,q为输入框输入搜索参数,page为页数,quietMillis为延迟多少毫秒发送ajax请求,data为返回json参数内容。

添加一个简单的Spring MVC控制器

/**
 * @param param 查询参数
 * @param page 查询页数
 * @return json
 */
@RequestMapping("select")
@ResponseBody
public String selection(@RequestParam("q") String param, @RequestParam("page") Long page) {
    return "{\"total\":4,\"param\":\"" + param + "\",\"page\":" + page + ",\"items\":" +
            "[{\"id\":\"tag1\",\"text\":\"tag1\"},{\"id\":\"tag2\",\"text\":\"tag2\"}," +
            "{\"id\":\"tag3\",\"text\":\"tag3\"},{\"id\":\"tag4\",\"text\":\"tag4\"}]}";
}

注意,如果是select标签,使用select2的ajax会报错,要改为input标签,并设置type=hidden;如果是静态的页面包含select>option的,直接用$(selector).select2();渲染即可。

更多内容请查看http://select2.github.io/select2/

时间: 2024-10-11 06:18:03

select2组件的相关文章

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

前言:在介绍select组件的时候,博主之前分享过一篇JS组件系列——两种bootstrap multiselect组件大比拼,这两个组件的功能确实很强大,只可惜没有图文结合的效果(也就是将图片放入到select里面随着文字一起显示).前两天做一个菜单图标选择的功能,就要用到这个图文选择的功能.于是乎又是找啊找.终于不负所望,找到了我们伟大的select2组件.今天分享下这个组件的一些用法和特性. 一.组件说明以及API说明 Select2使用示例地址:https://select2.githu

BootStrap Select2组件

想使用Select2组件必须引用:select2.min.css和select2.min.js两个文件:如下: 页面写法很简单: 在这里多选是没有搜索功能的,只有单选的时候才会有搜索功能. Select2的数据源最起码得有Id和text两个字段 下面就是Select2的数据处理了: 这里的item的数据为: 效果如下: 原文地址:https://www.cnblogs.com/yuanxinghuo/p/8119671.html

bootstrap与Select2使用小结

这个select2组件的功能确实很强大,可以将图片放入到select里面随着文字一起显示. 组件的下载地址以及API说明地址: 1.Select2使用示例地址:https://select2.github.io/examples.html .http://select2.github.io/select2/ 2.Select2参数文档说明:https://select2.github.io/options.html 3.Select2源码:https://github.com/select2/s

vuejs心法和技法

http://www.cnblogs.com/kidsitcn/p/5409994.html 注意:本文记录作者在学习和使用vuejs开发中的点点滴滴,从vuejs1.0开始直到现在的vuejs2.0以后的版本.期中部分1.0的内容已经过时,仅作各位朋友参考,建议重点关注2.0相关的内容,会随着我对vuejs有了更多的体会后不断维护更新,也欢迎朋友们批评指正共同学习提高. 所有的vuejs组件都是被扩展的vue实例: var MyComponent = Vue.extend({ //扩展选项对象

BootstrapTable+KnockoutJS实现增删改查解决方案

BootstrapTable+KnockoutJS实现增删改查解决方案 前言:上篇介绍了下ko增删改查的封装,确实节省了大量的js代码.博主是一个喜欢偷懒的人,总觉得这些基础的增删改查效果能不能通过一个什么工具直接生成页面效果,啥代码都不用写了,那该多爽.于是研究了下T4的语法,虽然没有完全掌握,但是算是有了一个大致的了解.于是乎有了今天的这篇文章:通过T4模板快速生成页面. KnockoutJS系列文章: JS组件系列——BootstrapTable+KnockoutJS实现增删改查解决方案(

BootstrapTable+KnockoutJS自定义T4模板快速生成增删改查页面

前言:上篇介绍了下ko增删改查的封装,确实节省了大量的js代码.博主是一个喜欢偷懒的人,总觉得这些基础的增删改查效果能不能通过一个什么工具直接生成页面效果,啥代码都不用写了,那该多爽.于是研究了下T4的语法,虽然没有完全掌握,但是算是有了一个大致的了解.于是乎有了今天的这篇文章:通过T4模板快速生成页面. KnockoutJS系列文章: JS组件系列——BootstrapTable+KnockoutJS实现增删改查解决方案(一) JS组件系列——BootstrapTable+KnockoutJS

JS组件系列——封装自己的JS组件

前言:之前分享了那么多bootstrap组件的使用经验,这篇博主打算研究下JS组件的扩展和封装,我们来感受下JQuery为我们提供$.Extend的神奇,看看我们怎么自定义自己的组件,比如我们想扩展一个$("#id").MyJsControl({})做我们自己的组件,我们该如何去做呢,别急,我们慢慢来看看过程. 一.扩展已经存在的组件 1.需求背景 很多时候,我们使用jquery.ajax的方式向后台发送请求,型如 $.ajax({ type: "post", ur

前端组件库

//来源:http://www.cnblogs.com/liuzhibin/p/5944821.html 0. 前端自动化(Workflow) 前端构建工具 Yeoman – a set of tools for automating development workflow gulp – The streaming build system grunt – the JavaScript Task Runner F.I.S – 前端集成解决方案 前端模块管理器 Bower – A package

JS组件系列——封装自己的JS组件,你也可以!

前言:之前分享了那么多bootstrap组件的使用经验,这篇博主打算研究下JS组件的扩展和封装,我们来感受下JQuery为我们提供$.Extend的神奇,看看我们怎么自定义自己的组件,比如我们想扩展一个$("#id").MyJsControl({})做我们自己的组件,我们该如何去做呢,别急,我们慢慢来看看过程. 一.扩展已经存在的组件 1.需求背景 很多时候,我们使用jquery.ajax的方式向后台发送请求,型如 $.ajax({ type: "post", ur