但是在select2的时候 显示原始值是一个非常非常非常非常非常要命的难题。
研究了3个小时, 最后使用$.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; }//,// 函数用于呈现当前的选择
});
重点是下面的代码, 再次加载默认值. 赋值.
$c_HospitalCode.trigger('change');//使用这个<a href="/tag/fangfa/" target="_blank" class="keywords">方法</a><a href="/tag/xianshi/" target="_blank" class="keywords">显示</a>到select2上.
}
});
主要是在select 控件添加上 option . 具体是ajax加载的还是直接后台用代码生成的. 都可以.. 最后用 $select2.trigger(‘change'); 渲染到界面上.. 就可以了。
以上这篇select2 ajax 设置默认值,初始值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。