bootstrapTable 列表複選框分頁回填
columns屬性內容
一、list集合方法型別
columns : column = [ {
checkbox: true, // 顯示覆選框formatter: function (i,row) { // 每次載入 checkbox 時判斷當前 row 的 id 是否已經存在全域性 Set() 裡
if($.inArray(row.tea_id,overAllIds)!=-1){// 因為 判斷數組裡有沒有這個 id
return {
checked : true // 存在則選中
}
}
}
}
觸發後方法:
$('#tb1').on('uncheck.bs.table check.bs.table check-all.bs.table uncheck-all.bs.table',function(e,rows){
var datas = $.isArray(rows) ? rows : [rows]; // 點選時獲取選中的行或取消選中的行
examine(e.type,datas); // 儲存到全域性 Array() 裡
});
var overAllIds = new Array(); //全域性陣列
function examine(type,datas){
debugger
if(type.indexOf('uncheck')==-1){
for (var i = 0; i < datas.length; i++) {
// 新增時,判斷一行或多行的 id 是否已經在數組裡 不存則新增
overAllIds.indexOf(datas[i].tea_id) == -1 ? overAllIds.push(datas[i].tea_id) : -1;
}
}else{
for (var i = 0; i < datas.length; i++) {
overAllIds.splice(overAllIds.indexOf(datas[i].tea_id),1); //刪除取消選中行
}
}
//console.log(overAllIds);
}
要根據datas的資料型別、內容, 頁面做的時候做好事打debugger 根據步驟檢視,從而修改為自己需要的內容
二、map鍵值對集合型別
columns : column = [ {
checkbox: true, // 顯示覆選框
formatter: function (i,row) {
if(overAllIds.has(row.tea_id)){//是否存在key 'datas[i].tea_id': true
return {
checked : true // 存在則選中
}
}
}
}
var overAllIds = new Map();
function examine(type,datas){
var key=null,val=null;
if(type.indexOf('uncheck')==-1){
for (var i = 0; i < datas.length; i++) {
key=datas[i].tea_id;
val=datas[i].nickname
overAllIds.set(key,val);
}
}else{
for (var i = 0; i < datas.length; i++) {
overAllIds.delete(datas[i].tea_id); //刪除key 'datas[i].tea_id'
}
}
}