报表常用JS事件介绍(持续更新)

(个人总结更新)报表常用JS事件介绍:

1、 JS事件控制隐藏行:

$("#r-1-0").toggle(); //隐藏第二行(由0开始算)

$("#r-1-0").hide(); //隐藏第二行 

$("#r-1-0").show(); //显示第二行 

toggle()缺省为先false后true的循环;false表示隐藏;true表示显示。

2、 JS事件将当前报表生成文件:

_g('${sessionID}').writeReport();

此功能可以应用与数据提交,储存至后台;也可以用于后台数据文件生成,用于其他报表查询此文件数据;也可以用于数据文件下载。 目前在迈安元数据软件中广泛应用,结合CRD和DPS,可以很灵活地提交数据,条件性筛选和提交部分数据等。

3、JS事件获取控件所在行或所在行数据时,

获取方式:

var $td=$(this.editComp).parents("td")[0];

var rownum =contentPane.curLGP.getTDRow($td)-1;

各控件的属性:

文本控件:editComp        文本域控件:editComp

数字控件:editComp        密码控件:editComp

按钮控件:$btn            复选框控件:$btn

单选复选框控件:$container    复选框组控件:$container

下拉框控件:editComp        下拉复选框控件:editComp

日期控件:editComp        文件控件:$uploadForm

列表控件:element        下拉树控件:editComp

视图树控件:element

4、控件编辑后JS事件,及时更新控件值:

编辑后事件及时更新控件值:

文本框:

var value=this.getValue();

contentPane.setCellValue(7,2,value);//重新写回控件所在单元格

下拉框:

contentPane.curLGP.selectTDCell(); //移出焦点

4、 在方法4方法中的缺陷是,当报表中控件数太多时,一一写入JS事件,对项目组人员来说很费力,也不好维护;此时可以在最后的用于提交的按钮上,写入JS事件,配合延迟事件,移出光标,更加实用可靠,方便维护

移出光标:

function remove(){

    function next(){
        var wb=contentPane.getCellValue(1,1);
    }
    return next;
}

var work=remove();
setTimeout(work,0);

6、鼠标移上、移出、点击时,单元格颜色做出变化:

添加加载结束事件之后,在js输入框中输入如下所示语句:

$('.linkspan').mouseover(function(){$(this).css('color','red');}); //鼠标移上
$('.linkspan').mouseleave(function(){$(this).css('color','blue');}); //鼠标移出
$('.linkspan').mousedown(function(){$(this).css('color','#C0C0C0');}); //鼠标点击

7、JS实现填报报表编辑后或数据变化后不显示红角

添加加载结束事件:

contentPane.on("cellselect", function(td){
    $('.dirty').removeClass('dirty');
    }
);

8、JS解决弹出框或刷新页面被阻止问题:(在代码中前置即可)

window.onbeforeunload = function(e) {
    e.stopPropagation()
}

9、 JS控制控件是否可用/可见:

contentPane.getWidgetByName("A4").setVisible(true);//设置A4单元格数据和控件可见

setEnable(boolean):设置是否可用,true为可用,false为不可用;

setVisible(boolean):设置是否可见,true为可见,false为不可见;

10、 JS实现隐藏部分sheet,可用于用户报表sheet权限控制:

(隐藏sheet名为1、2、4的页面,并避免打开本应隐藏的默认sheet)

var sheet = [1, 2, 4];
$.each(sheet,function(index, value) {
    $('[title="' + value + '"]').hide();
})

$.each($('.mr-sheetbutton-container'),function(index, value) {
    if(!($(value).is(':hidden'))){
        $(value).click();
        return false;
    }
})

11、单选复选框控件设置间距,控件中添加初始化事件:

$('.mr-group-span').css("margin-left","40px")

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值