java报表实现excel一样冻结表头的功能
客户的需求跟狗屎一样,一会一个,切身体会到良好架构的好处。最近继续客服报表的问题解决。增加了几个新的指标,后台sql改了,拿过来只须在一个dao类中修改就足够了,可恨的是客户又提出来改报表表样,加个类似excel冻结表头的功能。
报表较大的,看到下面的数据就看不到表头对应的是什么,如下图所示,如此也确实不便。
解决方案:
开始上网找资料,找了个jquery的方法,大体意思就是克隆表头到一个div里面,随时滚动调整表头的位置,例子很简单行列表,但是遇到中国特色的复杂报表,老外的jquery并不好用,最容易出现问题的就是表格宽度,边框,滚动条宽度一系列宽度问题。最直接也最简单的实现方法就是将表头也实际内容分割出来,将内容放到新的div中,按表头调整好宽度,设置div的overflow-y属性为auto,overflow-x:hidden,在固定个高度就ok了。