JS实现删除行前先确认

编辑
  • 文档创建者:文档助手1
  • 浏览次数:8464次
  • 编辑次数:13次
  • 最近更新:ukae 于 2018-08-10
  • 1. 描述

    在对行式填报表进行操作时,希望实现如下图所示的效果即点击删除行按钮时,弹出确认删除对话框,若点击确认则删除数据并提交入库;若点击取消,则不执行任何操作。


    2. 思路

    通过给删除行按钮增加一个点击事件,在JS中通过返回值的不同来实现不同操作。
    可以通过contentPane.deleteReportRow()方法进行间接的删除二次确认的操作,方法请参考:删除行操作提示并二次确认

    3. 操作步骤

    1)报表设计如下:
    以模板%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\填报预览JS实例\42-JS实现插入自定义行数.cpt为例,报表样式如下:

    2)最后一列的按钮设置为删除按钮:

    3)为控件添加点击事件

    JS代码如下:
    if(confirm("确认删除"))   //弹出确认删除对话框  
    {
      setTimeout(function() { 
         _g('${sessionID}').writeReport();   //执行提交入库操作
        }, 2000);
      return true;    //点击确定时,返回值为true,执行如上操作。
    }
    else
    {
       return false; //点击取消时,返回值为false,不执行操作。
    }
    注:删除行操作默认过程是页面先删除选中的行,再提交入库,因此需要延迟2秒,等页面删除了数据后再执行提交入库事件。

    4. 预览效果

    4.1 PC端预览效果


    4.2 移动端预览效果

    注:经测试,移动端不支持此js

    5. 已完成模板

    模板效果在线查看请点击:JS实现删除行前先确认.cpt
    已完成的模板,可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\填报预览JS实例\45-JS实现删除行前先确认.cpt


    附件列表


    主题: 二次开发
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

    此页面有帮助吗?只是浏览 [ 去社区提问 ]