bootstrap table 行內編輯Select2多選 需要修改bootstrap-editable.js源碼的itemsByValue方法
當多選時,回傳類似 ",1,2,3"的字符串,需要轉換成數組
var columns = [{ title : '列名', field : 'zpyq', align : 'center', width : "25%", editable : { type : 'select2', title : '列名', name : 'zpyq', emptytext : "--", placement : 'top', source : function() {//動態獲取數據 var result = []; $.Ajax({ url : $.el.Register.AppUrl + "rwfp/selectZjyqB", async : false, type : "get", data : {}, success : function(data, status) { $.each(data, function(key, value) { result.push({ value : value.id, text : value.zkyq }); }); } }); return result; }, inputclass : 'input-large', select2 : { allowClear : true, multiple : true,//多選 tokenSeparators : [",", " "], width : '150px'//設置寬 } } }]bootstrap-editable.js源碼修改
itemsByValue : function(value, sourceData, valuePRop) { if (!sourceData || value === null) { return []; } if (typeof(valueProp) !== "function") { var idKey = valueProp || 'value'; valueProp = function(e) { return e[idKey]; }; } /** * @author ZhangZhi 2017-02-05 * 行內編輯select2多選設置 */ value += ""; if (value.substr(0, 1) == ',') value = value.substr(1); value = value.split(','); /** * 修改結束 */ var isValArray = $.isArray(value), result = [], that = this;
新聞熱點
疑難解答