(本文档仅供参考)
...
问题说明
在excel里面预览是正常的,所有数据都是居左显示
但是发布预览之后,非0数值并没有左对齐
...
解决方案
该问题是第三方插件的bug,可以通过宏规避
如果是静态数据,可直接通过以下客户端宏来进行规避:
如果是静态数据:
ClientSide spreadsheetReport onRender
代码块 | ||
---|---|---|
| ||
function main(spreadsheetReport, isAjaxRefreshCallback) |
...
{ var cell = spreadsheetReport.getCell("C5"); |
...
cell.firstChild.style.marginLeft = "0px"; |
...
cell = spreadsheetReport.getCell("C6"); |
...
cell.firstChild.style.marginLeft = "0px"; |
...
cell = spreadsheetReport.getCell("C7"); |
...
cell.firstChild.style.marginLeft = "0px"; |
...
cell = spreadsheetReport.getCell("C8"); |
...
cell.firstChild.style.marginLeft = "0px"; } |
如果是动态数据,需要结合以下服务端和客户端宏来进行规避:
ServerSide spreadsheetReport onBeforeOutput
...
代码块 |
---|
...
|
...
| |
function main(spreadsheetReport) { |
...
spreadsheetReport.printExpandedPositions(); |
...
} |
ClientSide spreadsheetReport onRender
代码块 | ||
---|---|---|
| ||
function main(spreadsheetReport, isAjaxRefreshCallback) { |
...
var posList = spreadsheetReport.getExpandedPositions("C5"); //获取对应的扩展单元格列表 |
...
for (var i = 0; i < posList.length; i++) { |
...
var cell = spreadsheetReport.getCell(posList[i]); |
...
if (cell.innerText != 0) { |
...
cell.firstChild.style.marginLeft = "0px"; |
...
} } |
...
} |
}
Viewtracker |
---|