select2的使用

function selectInit(url, v) {
$("#test").select2({
placeholder: '查询',
// minimumInputLength: 2,
maximumInputLength: 50,
separator: ",", // 分隔符
ajax: {
url: url,
dataType: 'json',
delay: 250,
data: function (term, page) {
return {
name: term,
limit: 8,
page: page,
employee_id:$('#employee_id').val(),
};
},
results: function (data, page) {
return {results: data.result};
}
},
initSelection: function (element, callback) {
if (element.val()) {
var data = JSON.parse(element.val());
//element.val);
element.val(data.id);
callback(data);
}
},
//2 当在datatable头部坐查询条件时 可用post重新请求进行条件保持显示
initSelection: function (element, callback) {
if(element.val()){
var ele_id = element.val();
$.post(url, {id:ele_id}, function(data){
callback(JSON.parse(data));
})
}
},

        formatInputTooShort: "请输入",
        formatNoMatches: "没有找到",
        formatSearching: "查询中...",
        maximumSelectionLength: 10,//查询个数
    });
    if (v) {//编辑时初始化
        $("#test").val(v).trigger("change");
    }
} 

当需要 employee_id参数进行实时查询时:
var emp = function (url) {
$("#employee_id").on('change', function () {
$('#test').select2('val', ""); //置空原有的值
selectInit(url);
});
}

在controller中加载
if($value) {
//默认显示
$initJs[] = '$("#addressname").val(JSON.stringify('.$value.')).trigger("change");';
}

你可能感兴趣的:(select2的使用)