select2 ajax 设置默认值,初始值的方法


Posted in Javascript onAugust 09, 2018

在做功能的时候需要修改数据, 修改数据时需要显示原始值。

但是在select2的时候 显示原始值是一个非常非常非常非常非常要命的难题。

研究了3个小时, 最后使用$.ajax 重新加载原始值, 并显示。

//two AJAX获取数据方式(每次请求)
 var $c_HospitalCode = $("#c_HospitalCode").select2({
 ajax: {
  type: 'GET',
  url: "/Report/AjaxOption/Ajax_LoadHospitalByKey",
  dataType: 'json',
  delay: 400,
  data: function (params) {
   return {
    key: params.term, // search term 请求参数
    page: params.page,
    MKORGCode: '@VModel.MKORGCode'
   };
  },
  processResults: function (data, params) {
   //重命名字段名
   for (var i = 0; i < data.length; i++)
   {
    data[i].id = data[i].Value;
    data[i].text = data[i].Name;
   }
   //params.page = params.page || 1;
   return {
    results: data//,//itemList
    //pagination: {
    // more: (params.page * 30) < data.length
    //}
   };
  },
  cache: true
 },

 placeholder: '请选择',//默认文字提示
 //placeholder: { id: "2", text: "text2" },
 language: "zh-CN",
 tags: true,//允许手动添加
 separator: ",", // 分隔符
 allowClear: true,//允许清空
 escapeMarkup: function (markup) { return markup; }, // 自定义格式化防止xss注入
 minimumInputLength: 3,//最少输入多少个字符后开始查询
 formatResult: function formatRepo(repo) { return repo.text; }, // 函数用来渲染结果
 formatSelection: function formatRepoSelection(repo) { return repo.text; }//, // 函数用于呈现当前的选择 
 });

重点是下面的代码, 再次加载默认值. 赋值.

//再次加载默认值. 赋值. 
  $.ajax({
   url: "/Report/AjaxOption/Ajax_LoadHospitalByHospitalCodes", 
   data: { HospitalCodes: '@VModel.HospitalCode' },
   dataType:'json',
   success: function (data) { 
    for (var d = 0; d < data.length; d++) {
     var item = data[d]; 
     var option = new Option(item.Name, item.Value, true, true); 
     $c_HospitalCode.append(option);
    }

    $c_HospitalCode.trigger('change');//使用这个方法显示到select2上.
   } 
  });

主要是在select 控件添加上 option . 具体是ajax加载的还是直接后台用代码生成的. 都可以.. 最后用 $select2.trigger(‘change'); 渲染到界面上.. 就可以了。

以上这篇select2 ajax 设置默认值,初始值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jQuery图片平滑连续滚动插件
Apr 27 Javascript
Jquery阻止事件冒泡 event.stopPropagation
Dec 11 Javascript
原生javascript和jquery判断浏览器版本等信息
Jul 04 Javascript
jQuery实现Twitter的自动文字补齐特效
Nov 28 Javascript
js实现同一页面可多次调用的图片幻灯切换效果
Feb 28 Javascript
Angularjs的ng-repeat中去除重复数据的方法
Aug 05 Javascript
bootstrap中的 form表单属性role=&quot;form&quot;的作用详解
Jan 20 Javascript
javascript实现秒表计时器的制作方法
Feb 16 Javascript
JavaScrpt判断一个数是否是质数的实例代码
Jun 11 Javascript
js实现二级菜单点击显示当前内容效果
Apr 28 Javascript
vue router 通过路由来实现切换头部标题功能
Apr 24 Javascript
jQuery实现的分页插件完整示例
May 26 jQuery
bootstrap select2插件用ajax来获取和显示数据的实例
Aug 09 #Javascript
微信小程序url传参写变量的方法
Aug 09 #Javascript
angular6.x中ngTemplateOutlet指令的使用示例
Aug 09 #Javascript
koa上传excel文件并解析的实现方法
Aug 09 #Javascript
使用layer弹窗和layui表单实现新增功能
Aug 09 #Javascript
vue-cli初始化项目中使用less的方法
Aug 09 #Javascript
video.js 实现视频只能后退不能快进的思路详解
Aug 09 #Javascript
You might like
使用YUI+Ant 实现JS CSS压缩
2014/09/02 PHP
php实现设计模式中的单例模式详解
2014/10/11 PHP
Laravel中服务提供者和门面模式的入门介绍
2017/11/06 PHP
PHP asXML()函数讲解
2019/02/03 PHP
js getElementsByTagName的简写方式
2010/06/27 Javascript
jQuery控制图片的hover效果(smartRollover.js)
2012/03/18 Javascript
JavaScript中instanceof与typeof运算符的用法及区别详细解析
2013/11/19 Javascript
js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动)
2013/12/11 Javascript
javascript检查浏览器是否已经启用XX功能
2015/07/10 Javascript
JavaScript实现图片切换效果
2017/08/12 Javascript
jQuery plugin animsition使用小结
2017/09/14 jQuery
JS路由跳转的简单实现代码
2017/09/21 Javascript
JavaScript实现全选取消效果
2017/12/14 Javascript
JS点击动态添加标签、删除指定标签的代码
2018/04/18 Javascript
深入浅析angular和vue还有jquery的区别
2018/08/13 jQuery
vue element-ui读取pdf文件的方法
2019/11/26 Javascript
vant实现购物车功能
2020/06/29 Javascript
React实现评论的添加和删除
2020/10/20 Javascript
[25:59]Newbee vs TNC 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
浅谈python中截取字符函数strip,lstrip,rstrip
2015/07/17 Python
利用Python批量生成任意尺寸的图片
2016/08/29 Python
Ubuntu 下 vim 搭建python 环境 配置
2017/06/12 Python
python实现键盘控制鼠标移动
2020/11/27 Python
pandas ix &amp;iloc &amp;loc的区别
2019/01/10 Python
在Python 中同一个类两个函数间变量的调用方法
2019/01/31 Python
python实现爬虫抓取小说功能示例【抓取金庸小说】
2019/08/09 Python
在脚本中单独使用django的ORM模型详解
2020/04/01 Python
使用Django清空数据库并重新生成
2020/04/03 Python
离线状态下在jupyter notebook中使用plotly实例
2020/04/24 Python
pycharm 对代码做静态检查操作
2020/06/09 Python
解决Keras TensorFlow 混编中 trainable=False设置无效问题
2020/06/28 Python
CSS3实现任意图片lowpoly动画效果实例
2017/05/11 HTML / CSS
让IE下支持Html5的placeholder属性的插件
2014/09/02 HTML / CSS
Michael Kors香港官网:美国奢侈品品牌
2019/12/26 全球购物
俄罗斯品牌服装在线商店:VIPAVENUE
2020/08/10 全球购物
乡镇2014法制宣传日活动总结
2014/11/01 职场文书