奇葩需求:客户要求某业务系统中生成的报表数据可以编辑。为响应客户的需求,本文基于Birt 4.6实现报表数据的可编辑(伪修改)。
BIRT 是以 Java 和 JavaEE 为基础为 Web 应用程序开发的基于 Eclipse 的开源报表系统,其本身并不支持报表数据的修改。因此想要实现报表数据的可编辑,需要修改生成报表的渲染页面。本文的方案是在报表生成页面引入Jquery实现报表表格数据的可编辑,这是一种简单的快速实现方式,具体实现方案如下:
1)找到Birt渲染页面
Birt的渲染页面路径../birt/webcontent/birt/pages/layout,不熟悉的朋友详见Github请添加链接描述
3) 2) 引入Jquery并避免冲突
<script type="text/javascript" src="<c:url value=‘/statics/js/jquery-3.2.1.min.js‘/>"></script>
去掉Jquery中的$混淆符号
<script>
$.noConflict();
</script>
3)实现表格的可编辑
jQuery("table td").dblclick(function(el) {
var editTxt = el.target.innerText;
if(editTxt!=""){
var editCell = jQuery(el.target);
var input = jQuery("<input type=‘text‘ value=‘" + editTxt + "‘/>");
editCell.html(input);
input.trigger("focus");
//失去焦点时
input.blur(function() {
var newTxt = jQuery(this).val();
editCell.html(newTxt);
});
}
});
最后求大家点个关注再走
原文地址:http://blog.51cto.com/favccxx/2084594
时间: 2024-11-05 22:53:04