项目中用到了select2.js插件的ajax方式加载数据,在编辑数据的时候需要回显,找了很多文章,都不能正常回显,谷歌之后在官方的github上找到些蛛丝马迹,终于做了出来。

1.引js和css
2.初始化
下面是我在项目中的初始化方式。第三个函数echoSelect2就是回显数据用的。

function initSelect2(dom,url,multiple){var subject = $(dom);//元素var Select2 = subject.select2({ajax: {url: url,dataType: 'json',data: function (params) {return {name: params.term, // 搜索参数};},processResults: function (data, params) {for (var i = 0; i < data.length; i++) {data[i].id = data[i].id;data[i].text = data[i].name;}return {results: data};},cache: true},placeholder: "请输入名称搜索",allowClear: true,    //选中之后,可手动点击删除escapeMarkup: function (markup) { return markup; }, // 让template的html显示效果,否则输出代码minimumInputLength: 2,    //搜索框至少要输入的长度,此处设置后需输入才显示结果language: "zh-CN",         //中文multiple:multiple, //是否多选width: 'resolve',closeOnSelect:false,templateResult: formatSubject, // 自定义下拉选项的样式模板templateSelection: formatSubjectSelection     // 自定义选中选项的样式模板});return Select2;
}function formatSubject(item) {if (item.loading) return item;var markup = '<div> <p class="text-primary">学科名称:' + item.name|| item.text + '</p>';//markup += '这里可以添加其他选项...';markup += ' </div>';return markup;
}function formatSubjectSelection(item) {return item.name || item.text;
}
//回显数据
function echoSelect2(dom,value){$.each(value,function(index,value){$(dom).append(new Option(value.name, value.id, false, true));});$(dom).trigger("change");
}

3.使用方式
var select2 = initSelect2("#school","/school/searchSchoolByName",true);
4. 回显方式
获取初始化数据定义成类似的数组形式:var data = [{id:1001,name:“哈哈哈”}];
调用方法echoSelect2("#school",data); 就OK了。

Select2异步ajax方式加载数据相关推荐

  1. 使用jQuery和YQL,以Ajax方式加载外部内容

    我们来看看怎样使用jQuery,以Ajax方式加载外部(其他域上)的内容.这里的所有代码都可以从GitHub下载,也可以在这个演示页面中获取,因而不用复制粘贴了. OK,Ajax通过jQuery是很容 ...

  2. layui信息加载流的方式加载数据

    SSM项目中使用layui信息加载流的方式加载数据 这里首先jsp页面来一个div容器,这里数数据显示的地方 //css样式: <style type="text/css"& ...

  3. python爬虫之Ajax动态加载数据抓取--豆瓣电影/腾讯招聘

    动态加载数据抓取-Ajax 特点 1.右键 -> 查看网页源码中没有具体数据 2.滚动鼠标滑轮或其他动作时加载 抓取 1.F12打开控制台,页面动作抓取网络数据包 2.抓取json文件URL地址 ...

  4. ext ajax同步加载数据,ext 的loadmask 与ajax的同步请求水火不容

    因为ajax 的同步请求会有一段请求时间.有的短.有的长,对于短的咱们仍是能接受的,不过长的话就必须处理一下了,ajax 就好比处于ext 4.2.0的框架下,须要一个遮掩的样式,框架是有自带的,lo ...

  5. echarts在.Net中使用实例(二) 使用ajax动态加载数据

    通过上一篇文章可以知道和echarts参考手册可知,series字段就是用来存储我们显示的数据,所以我们只需要用ajax来获取series的值就可以. option 名称 描述 {color}back ...

  6. jquery ajax 滚动加载数据

    jquery php 滚动加载数据(文件包 rollingpage) 效果如下: 页面加载时候($function(){ 自动加载第一页数据 }) 设置: var winH = $(window).h ...

  7. 微信小程序ajax请求分页加载数据

    分页加载功能大家遇到的应该会经常遇到,应用场景也很多,例如微博,QQ,微信朋友圈以及新闻类应用,都会有分页加载的功能,这不仅节省了我们用户的流量,还提升了用户体验.那么今天的这篇文章就是介绍微信小程序 ...

  8. echarts html ajax,ECharts+Ajax动态加载数据实例(.NET)

    什么是ECharts ECharts 是一个数据可视化工具,提供了系列常用图表,底层基于ZRender(一个全新的轻量级canvas类库),创建了坐标系,图例,提示,工具箱等基础组件,并在此上构建出折 ...

  9. ajax 同步加载数据

    var data = $.ajax({url:"same.php",type:'GET',async:false,cache:false}).responseText; 主要是 a ...

  10. php ajax 加载列表,Ajax点击不断加载数据列表(图文教程)

    这篇文章主要介绍了Ajax点击不断加载数据列表的相关资料,需要的朋友可以参考下 Ajax简介 AJAX即"Asynchronous Javascript And XML"(异步Ja ...

最新文章

  1. api zabbix 拓扑图 获取_Zabbix报表系统
  2. A good security site
  3. Linux安装nginx进行make的报错 原因pcre及其源代码路径
  4. java bean 对象属性复制框架BeanMapping-release_0.0.2-注解支持
  5. 05-雷海林-mysql备份原理与在TDSQL中的实践
  6. 腾讯向开放原子开源基金会捐赠TencentOS tiny、TKEStack两大项目!
  7. 插头DP题目泛做(为了对应WYD的课件)
  8. matlab仿真二元等幅边射阵,MATLAB仿真天线阵代码.doc
  9. heroku创建linux主机,将Yesod部署到Heroku,无法静态构建
  10. 计算机科学技术编程基础教程
  11. 计算机书籍每周销量排行榜
  12. 机器学习10-信用卡反欺诈模型
  13. windows查看WIFI无线网络密码
  14. Neo4j Desktop图数据库导出
  15. MATLAB-1: 线性拟合(r2、系数和系数误差)
  16. linux中进程unit是什么意思,Unit(linux)基础命令
  17. Windows11 下屏幕亮度自动调整的问题解决
  18. 变量、参数和内存分配
  19. NTL密码算法开源库(数论库)代码分析项目--综述
  20. canvas简单实现纯色背景图片抠图

热门文章

  1. java爬虫技术怎么学_java网络爬虫基础学习(四)
  2. 页面定时跳转的js和php的代码实现和页面定时刷新
  3. oracle 分区表详解
  4. Python-运算符和其优先级
  5. CSS3D写3d画廊滚动
  6. 修复VS2010 Beat2的Application cannot start”问题
  7. 最严格的身份证校验(Java版)
  8. Yii 2.0 权威指南 (6) 请求处理
  9. 如何查看K/3数据库表及字段详细信息
  10. Oracle DBLINK 简单使用