function main(spreadsheetReport, isAjaxRefreshCallback) {
var cell = spreadsheetReport.getCell("B3"); //"+"所在单元格
cell.collapsed = false;
var expander = cell.ownerDocument.createElement("SPAN");
expander.innerHTML = "+";
expander.style.cursor = "pointer";
cell.insertBefore(expander, cell.firstChild);
var table = cell.parentNode.parentNode.parentNode;
var width = parseInt(table.offsetWidth);
expander.onclick = function() {
if (cell.collapsed) {
expander.innerHTML = "-"; //展开显示"-"
var rowCount = spreadsheetReport.getRowCount();
for (var i = 0; i < rowCount;) { //i=0,从第1行开始,即列头在第1行
var td0 = spreadsheetReport.getCell(i, 1);
var td1 = spreadsheetReport.getCell(i, 2);
var td2 = spreadsheetReport.getCell(i, 3);
if (td0 == td1) {
td0.colSpan++;
if (td0 == td2) {
td0.colSpan++;
}
} else {
td1.style.display = ""; //显示"+"所在列右边的第1列
td2.style.display = ""; //显示"+"所在列右边的第2列
}
i += td1.rowSpan;
}
cell.collapsed = false;
table.style.width = width + cell.hiddenWidth + "px";
} else {
expander.innerHTML = "+"; //收起显示"+"
var rowCount = spreadsheetReport.getRowCount();
var w = 0;
for (var i = 0; i < rowCount;) {
var td0 = spreadsheetReport.getCell(i, 1);
var td1 = spreadsheetReport.getCell(i, 2);
var td2 = spreadsheetReport.getCell(i, 3);
if (td0 == td1) {
td0.colSpan--;
if (td0 == td2) {
td0.colSpan--;
}
} else {
td1.style.display = "none"; //隐藏"+"所在列右边的第1列
td2.style.display = "none"; //隐藏"+"所在列右边的第2列
if (w === 0) {
w += td1.offsetWidth + td2.offsetWidth;
}
}
i += td1.rowSpan;
}
if (!cell.hiddenWidth) cell.hiddenWidth = w;
table.style.width = width - w + "px";
cell.collapsed = true;
}
}
expander.onclick();
}