easyui 使用datagrid合并表格时表头与表体不对应问题

shandian803 2014-12-25 11:27:55


如上图所示,表头合并成功了,但是表体的内容格式没有合并,这个应该怎么处理?
下面附上表格创建的代码

function init2(today,yestoday,beforeyesterday){
var grid_wAnaly = $('#grid_wAnaly').datagrid({
idField:'SJNAME',
singleSelect:true,
striped:true,
nowrap: false,
fit:true,
frozenColumns:[[
{field:'dl',title:'能源类型',width:60,hidden:true,rowspan:2,align:'center'},
{field:'QSBZ',title:'采集类型',width:60,hidden:true,rowspan:2,align:'center'}, //数据采集类型
{field:'FLAG',title:'是否已录入',width:60,hidden:true,rowspan:2,align:'center'},
{field:'TABLE_NAME',title:'表名',width:60,hidden:true,rowspan:2,align:'center'},
{field:'COL_NAME',title:'当前值字段',width:60,hidden:true,rowspan:2,align:'center'},
{field:'SJNAME',title:'采集单元',width:230,rowspan:2,align:'center'},
{field:'lx',title:'',width:20,rowspan:2,align:'center',
formatter:function(value,row,index){
return showPicture(value,row,index);
}
}
]],
columns:[[
{field:'date1',title:today,colspan:2,width:160,align:'center'},
{field:'date2',title:yestoday,colspan:2,width:160,align:'center'},
{field:'date3',title:beforeyesterday,colspan:2,width:160,align:'center'}
],[
{field:'DQZ1',title:'当前值',width:80,align:'center',
formatter:function(value,rec,index){
if(rec.QSBZ=="L" && rec.FLAG!="Y"){
return s = '<input type="text" id="'+today+rec.COL_NAME+'" stype="width:80px" class="datagrid-editable-input"/> ';

}else{
return value;
}
}
},
{field:'XHZ1',title:'消耗值',width:80,align:'center'},
{field:'DQZ2',title:'当前值',width:80,align:'center'},
{field:'XHZ2',title:'消耗值',width:80,align:'center'},
{field:'DQZ3',title:'当前值',width:80,align:'center'},
{field:'XHZ3',title:'消耗值',width:80,align:'center'}
]],
rowStyler: function(index,row){ //行着色
if(row.QSBZ=="L" && row.FLAG!="Y"){
return 'background-color:#fadd68';//浅黄
}else if(row.QSBZ=="Q"){
return 'background-color:#d0e3f5';//浅蓝d0e3f5
}
else{
return 'background-color:#79ff79';//绿色
}
},
onLoadSuccess:function () {
// var table = $(this).prev().find('table'), posDivs = table.eq(0).find('div.datagrid-cell'),//表头用来定位用的div
// bodyFirstDivs = table.eq(1).find('tr:eq(0) div'), //内容第一行用来设置宽度的div,以便设置和表头一样的宽度
// orderHeader = posDivs.map(function (index) { return { index: index, left: $(this).position().left} }); //计算表头的左边位置,以便重新排序和内容行单元格循序一致
// orderHeader.sort(function (a, b) { return a.left - b.left; }); //对表头位置排序
// setTimeout(function () {//延时设置宽度,因为easyui执行完毕回调后有后续的处理,会去掉内容行用来设置宽度的div的css width属性
// for (var i = 0; i < orderHeader.length; i++) {
// bodyFirstDivs.eq(i).css('width', posDivs.eq(orderHeader[i].index).css('width'));
// }
// },80)
},
toolbar:""

});
gridScroll(grid_wAnaly);
}
...全文
679 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Z-jean 2017-03-17
  • 打赏
  • 举报
回复
可以的,感谢
shandian803 2014-12-25
  • 打赏
  • 举报
回复
在线等大神解疑
shandian803 2014-12-25
  • 打赏
  • 举报
回复
在线等大神解疑
shandian803 2014-12-25
  • 打赏
  • 举报
回复
解决了,把“field”属性删掉即可,此贴终结。

87,903

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧