关于easyui datagrid多层嵌套动态合并列的问题

开发需求:使用easyUI开发报表,需要多层表头,表格也是多层嵌套。动态表头拼接,数据查询后动态筛选数据并过滤零值列。

遇到问题:动态过滤零值列后修改了顶层column的colspan属性导致不能正常展示内层嵌套表格;

解决方案:

var columns = $('#dg1').datagrid('options').columns;

  var top_cols = columns[0];

if(top_cols[top_cols.length-1]['field']=="fukuanfangshimingxi"){

//添加自定义专有属性'true_colspan'解决直接修改最上层表头列'colspan'属性导致的显示错误

top_cols[top_cols.length-1]['true_colspan'] = top_cols[top_cols.length-1]['colspan'];

}

然后再需要修改colspan属性的地方修改自定义属性

if(top_cols[top_cols.length-1]['field']=="fukuanfangshimingxi"){

  top_cols[top_cols.length-1]['true_colspan']-=1;

  //top_cols[top_cols.length-1]['colspan'] -= 1;

  //$('#dg1').datagrid('changeColumnSpan', {field:"fukuanfangshimingxi",new_col_span_num:top_cols[top_cols.length-1]['colspan']});

  }

问题原因:推测应该是修改顶层column的colspan属性会导致easyui重新计算table和td宽度

你可能感兴趣的:(关于easyui datagrid多层嵌套动态合并列的问题)