datagrid的方法
一、合并
1、datagrid根据字段动态合并单元格,tableID为table的id,colList要合并的列,用逗号分隔(例如:“aaa,bbb”),挨着相同的自动合并;
function mergeCellsByField(tableID, colList) {
var ColArray = colList.split(",");
var tTable = $("#" + tableID);
var TableRowCnts = tTable.datagrid("getRows").length;
var tmpA;
var tmpB;
var PerTxt = "";
var CurTxt = "";
for (j = ColArray.length - 1; j >= 0; j--) {
PerTxt = "";
tmpA = 1;
tmpB = 0;
for (i = 0; i <= TableRowCnts; i++) {
if (i == TableRowCnts) {
CurTxt = "";
} else {
CurTxt = tTable.datagrid("getRows")[i][ColArray[j]];
}
if (PerTxt == CurTxt) {
tmpA += 1;
} else {
tmpB += tmpA;
tTable.datagrid("mergeCells", {
index: i - tmpA,
field: ColArray[j], //合并字段
rowspan: tmpA,
colspan: null
});
tTable.datagrid("mergeCells", { //根据ColArray[j]进行合并
index: i - tmpA,
field: "Ideparture",
rowspan: tmpA,
colspan: null
});
tmpA = 1;
}
PerTxt = CurTxt;
}
}
}
2、datagrid列合并
var merges = {
index: 0, //第1行开始
field: "unitcost", //从指定的列(unitcost)开始
colspan: 3 //从指定的列开始,合并多少个列
}
$("#table1").datagrid('mergeCells', {
index: merges.index,
field: merges.field,
colspan: merges.colspan
});
二、定义列的排列顺序,只能用’asc’或者’desc’
sortOrder: 'asc', //asc是正序(从小到大),desc是倒序(从大到小)
sortName: 'aaa', //想要排序的字段名
附上datagrid官方文档链接: link.