背景需求
润乾报表可以在发布报表的JSP中通过scale这个标签属性控制报表的缩放显示比例,其属性取值为实数,该方式只能通过指定的具体缩放的比例值进行缩放,不能满足根据浏览器的窗体大小进行缩放的需求。
实现思路
在页面初次加载报表和改变窗体大小时,通过JS获取浏览器窗体的大小设定为报表所在区域的宽度大小。
实现方法:.在showReport.jsp中加上
<scriptlanguage="javascript">
function myResize() {
var tab1 = document.getElementById("report1");
tab1.style.width=document.body.clientWidth;
}
window.οnlοad=myResize;
window.οnresize=myResize;
</script>
先获取到报表所在区域的页面元素,再通过document.body.clientWidth获得到浏览器的宽度,将该宽度值用于改变报表所在区域的样式宽度。
有的时候会将我们的报表通过iframe嵌套到自己的应用里面。按照浏览器的宽度展现会显示不全, 将里面的tab1.style.width= document.body.clientWidth;
改为 tab1.style.width="100%"; 即可。
发布报表显示的效果:
缩小浏览器窗口显示的效果: