...
3、在报表宏界面新建客户端模块。在弹出的新建模块对话框中,选择对象为spreadSheetReport、事件为onRender、并把下面宏代码复制到代码编辑区域。
宏类型
类型 | 对象 | 事件 |
ClientSide | spreadsheetReport | onRender |
宏代码
代码块 | ||||
---|---|---|---|---|
| ||||
function main(spreadsheetReport) |
...
{ //debugger; |
...
var r = spreadsheetReport.getRowCount(); //获取电子表格总行数 |
...
for (var i = 2; i < r - 1; i++) |
...
{ // |
...
设置类别 var td = spreadsheetReport.getCell(i, 2); //根据行列号获取单元格 |
...
truncateCellInnerText(td, 3);//设置显示的字符个数 |
...
// |
...
设置名称 td = spreadsheetReport.getCell(i, 3); |
...
truncateCellInnerText(td, 2); |
...
//设置数量 |
...
td = spreadsheetReport.getCell(i, 4); |
...
truncateCellInnerText(td, 1); |
...
}
}
// 如果单元格内容超出指定长度、将其截短
...
} } // 如果单元格内容超出指定长度、将其截短 function truncateCellInnerText(cell, textMaxLength) |
...
{ if (!cell) |
...
return;
}
var len = textMaxLength || 10;
...
{ return; } var len = textMaxLength || 10; //var txt = cell.innerHTML.replace(/<[^<>]*>/g, ''); |
...
var txt = $(cell).text(); |
...
if (txt.length > len) |
...
{ //cell.innerHTML = txt.substring(0, len) + "..."; |
...
$(cell).text(txt.substring(0, len) + "..."); |
...
//cell.title = txt; |
...
$(cell).attr("title", txt); |
...
}
}
...
} } function strlen(str) |
...
var len = 0;
...
{ var len = 0; for (var i = 0; i < str.length; i++) |
...
{ var c = str.charCodeAt(i); |
...
//单字节加1 |
...
if ((c >= 0x0001 && c <= 0x007e) || (0xff60 <= c && c <= 0xff9f)) |
...
{ len++; |
...
} else {
len += 2;
}
}
return len;
} else { len += 2; } } return len; } |
PS: 把如上中的宏代码粘贴进去。请各位根据实际情况调整代码中的6 ~ 13行。