润乾报表既固定表头又分页 ,动态设置滚动条高度、宽度的解决方法(转载)
一
固定表頭在日常的報表使用中常常被使用,潤乾提供的needScroll標簽很好地支持了這個功能,但是我們有的時候希望記錄條數過多時,既能固定表頭又能夠分頁。這時我們該如何設置呢?
別著急,現在潤乾報表很好地支持了這個功能,只需要增加一個needPagedScroll即可。下面我們來看一下具體實現。
首先我們設計一個報表,并設置好上表頭和左表頭。
接著在發布報表的jsp中增加如下標簽:
needPagedScroll="yes"
needScroll="yes"
這兩個標簽都是需要添加的。
二
問題出現的條件:報表在WEB頁面輸出的時候,行、列都很多,需要設置橫向、縱向滾動條來固定報表表頭。但是,由于報表輸出的標簽中指定的滾動條的寬度、高度都是一個指定的高度、寬度,而不能設置為一個按頁面寬度高度的百分比。
例如:
<report:html name=”report1″ reportFileName=”<%=raqpath%>”
…
needScroll=”yes”
scrollWidth=”300“
scrollHeight=”200“
…
/>
這樣,就造成針對客戶端不同的分辨率的顯示器,滾動條的高度和寬度固定,對于分辨率小的機器,在頁面上看不到滾動條,分辨率大的機器,滾動條右下方留出了很大的空白,這樣造成頁面不美觀,影響用戶體驗。
因此,針對以上問題,結合項目經驗,這里,拋磚引玉,提出一個簡便易行的解決方法。
1.在客戶訪問一個報表頁面之前,加一個redirect.jsp頁面,里面加入一個js函數,來獲取客戶端瀏覽器窗口的大小:
<SCRIPT>
var w = 0;
var h = 0;
//通過深入Document內部對body進行檢測,獲取瀏覽器窗口大小
if (document.documentElement&& document.documentElement.clientHeight && document.documentElement.clientWidth){
h = document.documentElement.clientHeight;
w = document.documentElement.clientWidth;
}else{
w = 1259 ;
h = 632 ;
}
//重定向到報表所在的jsp頁面,并且把客戶端瀏覽器寬度、高度,作為參數
//傳遞給報表所在的jsp頁面
window.location.href=”<%=path%>/mis2/reportcenter/res/showReport.jsp?<%=param%>&w=”+w+”&h=”+h ;
</SCRIPT>
2.在報表所在的jsp頁面上(showReport.jsp),獲取瀏覽器的寬度、高度
String w = request.getParameter(”w”) ;
String h= request.getParameter(”h”) ;
3.在報表輸出的標簽中,
<report:html name=”report1″ reportFileName=”a.raq”
funcBarLocation=””
params=”<%=param.toString()%>”
needScroll=”yes”
scrollWidth=”<%=w%>” –動態設置滾動條寬度、高度
scrollHeight=”<%=h%>”
/>
原文鏈接:http://blog.csdn.net/chaochao52001/article/details/53582523
------------------ 微信支付掃碼贊賞我--------------
有任何問題可以往log4@foxmail.com發郵件(可以直接點擊本段文字發送郵件)。或者在博客下方評論。如果覺得文章對你有用,請用贊賞的方式支持我。
總結
以上是生活随笔為你收集整理的润乾报表既固定表头又分页 ,动态设置滚动条高度、宽度的解决方法(转载)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: size_t为什么重要
- 下一篇: 神级bug解决方法