效果如图:

js文件如下:

$(function () {
initTable() $('#load_vip').change(function () {
$
.ajax({
type: 'POST',
url: '/nginx/config/diff',
data: {'load_vip': $(this).val()},
dataType: 'json',
})
.done(res => {
$('#mytable').bootstrapTable('load', res.table_list);
mergeCells(res.table_list, "diff_result");
})
.fail(res => {
})
}) function mergeCells(data, fieldName) {
// 声明一个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;
$('#mytable').bootstrapTable('mergeCells', {
index: index,
field: fieldName,
colspan: 1,
rowspan: count
});
index += count;
}
} function initTable() {
var columnsdata = [[
{field: 'instance_ip', title: "实例ip", sortable: true, align: 'center'},
{field: 'load_vip', title: "负载vip", sortable: true, align: 'center'},
{field: 'role', title: "角色", sortable: true, align: 'center'},
{field: 'start_time', title: "进程开始时间", sortable: true, align: 'center'},
{field: 'init_num', title: "进程数量", sortable: true, align: 'center'},
{
field: 'verify',
title: "校验结果",
sortable: true,
align: 'center',
formatter: function (value, row, index) {
if (value === '待修改') {
return `<span class="label label-default">待修改</span>`
} else if (value === '校验通过') {
return `<span class="label label-success">校验成功</span>`
} else {
return `<span class="label label-danger">校验失败</span>`
}
}
},
{field: 'diff_result', title: "主备配置对比", align: 'center', valign: "middle"}],
[] // 这里columnsdata必须为数组嵌套数组,且第二个为空数组才会出现图上效果
]; //初始化表格,动态从服务器加载数据 $('#mytable').bootstrapTable({ cache: false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*) sortable: false, //是否启用排序 showColumns: false, //是否显示列筛选按钮 showRefresh: false, //是否显示刷新按钮 clickToSelect: false, //是否启用点击选中行 // uniqueId: "ID", //每一行的唯一标识,一般为主键列  columns: columnsdata, pagination: false, }); } });

html

<table id="mytable" style="font-size:10px;" class="table table-bordered table-striped"></table>

最新文章

  1. js基础总结
  2. javascript的假查询
  3. 关于有偿提供拼图响应式后台的通知---------pintuer ui的官方通知(www.pintuer.com)
  4. [OpenCV] Samples 03: cout_mat
  5. LINUX内核分析第七周学习总结:可执行程序的装载
  6. 设计模式:命令模式(Command)
  7. linux GO语言配置安装
  8. lintcode:完美平方
  9. thinkphp,ajax返回结果
  10. Linux_Shell type
  11. Sharpui企业版-简单介绍【01】 【QQ群:206378966】
  12. 使用Swagger实现webapi接口自动化文档生成
  13. Vim的基本使用(二)
  14. 关于在linux下安装git,以及在idea上将项目部署到码云上
  15. HTML第四耍 超链接标签
  16. 关于Djanggo的环境变量
  17. android Studio 出现:Unable to resolve dependency for &#39;:app@debug/compileClasspath&#39;
  18. java中int和Integer比较大小
  19. SET ARITHABORT {ON | OFF}讲解
  20. javascript 创建video元素

热门文章

  1. 025_go语言中的通道同步
  2. 一文搞定Python正则表达式
  3. Python3,逻辑运算符
  4. 93复原IP地址。
  5. java System类、Math类、Arrays类
  6. C#LeetCode刷题之#867-转置矩阵(Transpose Matrix)
  7. TCP/IP速记
  8. 浏览器自动化的一些体会11 webclient的异步操作
  9. 浏览器自动化的一些体会9 访问angular页面的一个问题
  10. 这都Java15了,Java7特性还没整明白?