onLoadSuccess: function (data) {
data = $('#categorySonTab').bootstrapTable('getData', true);
//合并单元格
mergeCells(data, "name", 1, $('#categorySonTab'));
mergeCells(data, "url", 1, $('#categorySonTab'));
mergeCells(data, "cateWord", 1, $('#categorySonTab'));
mergeCells(data, "id", 1, $('#categorySonTab'));
},
合并方法(直接可用)
/**
* 合并单元格
* @param data 原始数据(在服务端完成排序)
* @param fieldName 合并属性名称
* @param colspan 合并列
* @param target 目标表格对象
*/
function mergeCells(data, fieldName, colspan, target) {
//声明一个map计算相同属性值在data对象出现的次数和
var sortMap = {};
for (var i = 0; i < data.length; i++) {
for (var prop in data[i]) {
if (prop == fieldName) {
var key = data[i][prop];
if (sortMap.hasOwnProperty(key)) {
sortMap[key] = sortMap[key] * 1 + 1;
} else {
sortMap[key] = 1;
}
break;
}
}
}
var index = 0;
for (var prop in sortMap) {
var count = sortMap[prop] * 1;
$(target).bootstrapTable('mergeCells', {index: index, field: fieldName, colspan: colspan, rowspan: count});
index += count;
}
}
效果图: