excel报表工具FineReport之图表显示不出来
将一张含有图表的报表通过iframe的方式嵌入到html中,图表在ie9的quirks模式下显示不出来,其他浏览器比如说,firefox,google等浏览器下显示正常,如下图:
IE9的quirks模式下:


工具/原料
excel报表工具FineReport
解决思路
由于ie9下面不同解析模式,图表展现不同,IE9下的quirks模式不可以,ie9标准模式能正常展现,所以我们可以修改外层的html的说明来解决这个问题,指明默认采用ie9模式即可。
解决方案
方案一
修改doctype,在最上方的doctype说明中声明该html在ie9下打开的时候,打开模式默认为IE标准模式,代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
整体代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<body>
<iframe id="total" width="800px" height="800px" src="/WebReport/ReportServer?reportlet=/doc/Primary/Chart/Chart.cpt" ></iframe>
</body>
</html>
方案二
增加一个meta标签,表明ie浏览器打开该html时,采用ie标准模式,代码如下:
<meta http-equiv="X-UA-Compatible" content="IE=9">
整体代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<meta http-equiv="X-UA-Compatible" content="IE=9">
<html>
<body>
<iframe id="total" width="800px" height="800px" src="/WebReport/ReportServer?reportlet=/doc/Primary/Chart/Chart.cpt" ></iframe>
</body>
</html>
效果查看
修改将修改之后的html放在%FineReport_HOME%\WebReport目录下,在IE9地址栏输入http://ip:端口号/WebReport/xxx.html,能可以看到图表已经显示出来,就说明上面的修改成功。如下图:
