select2 ajax 设置默认值,初始值的方法
在做功能的时候需要修改数据, 修改数据时需要显示原始值。
但是在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'); 渲染到界面上.. 就可以了。
相关推荐
时光如瑾雨微凉 2020-07-19
ppsurcao 2020-06-14
kentrl 2020-11-10
结束数据方法的参数,该如何定义?-- 集合为自定义实体类中的结合属性,有几个实体类,改变下标就行了。<input id="add" type="button" value="新增visitor&quo
ajaxyan 2020-11-09
zndy0 2020-11-03
学留痕 2020-09-20
Richardxx 2020-11-09
learningever 2020-09-19
chongxiaocheng 2020-08-16
ajaxhe 2020-08-16
lyqdanang 2020-08-16
curiousL 2020-08-03
TONIYH 2020-07-22
83510998 2020-07-18
坚持着执着 2020-07-16
jiaguoquan00 2020-07-07
李永毅 2020-07-05