如何避免在finereport开发的界面上,点击“清除”按钮后触发查询操作?

这里用finereport开发了一个报表页面,有两个按钮分别是“查询”和“重置”,遇到的问题是每次点击“重置”后,总是触发查询操作,这个如何避免?

FineReport 代新征 发布于 4 天前
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
1
CD20160914Lv8专家互助
发布于4 天前(编辑于 4 天前

-----文件------

test重置.rar

查询用自动出来的按钮是不会被重置的。其它的控件会重置!!

-------------------------------------

111.gif

这个是内置的查询按钮,不是自定义按钮写查询功能

image.png

不会的呀,你的重置按钮如何写的js?

reset()  这个是重置

JS实现清空控件内容- FineReport帮助文档 - 全面的报表使用教程和学习资料

//获取参数界面上的所有控件,遍历每个控件并重新赋值

$.each(this.options.form.name_widgets, function(i, item) {

    if(item.getType() !== 'label') {

        item.reset();

    }

});

重新拖一个新按钮放在参数面板,再把js放在里面 !!!

image.png

  • 代新征 代新征(提问者) // 清空所有参数控件
    var form = this.options.form;
    form.getWidgets().forEach(function(widget) {
    // 排除查询按钮(根据实际名称修改)
    if(widget.name !== "Search") {
    widget.setValue(null);
    }
    else {
    widget.unbind("afteredit")
    }
    });
    2025-08-12 11:27 
  • CD20160914 CD20160914 回复 代新征(提问者) 用上面的代码就行了!
    2025-08-12 11:28 
  • CD20160914 CD20160914 回复 代新征(提问者) 仔细看文档,和我给的代码,这样不会触发查询的!!
    2025-08-12 11:28 
  • 代新征 代新征(提问者) 回复 CD20160914 不行,还是触发了查询动作。
    2025-08-12 11:29 
  • CD20160914 CD20160914 回复 代新征(提问者) 怎么可能呀,你的按钮要用自定义的,不要用查询按钮复制出来的!!!
    2025-08-12 11:30 
最佳回答
1
孤陌Lv6资深互助
发布于4 天前(编辑于 4 天前

点击查询前不现实报表内容勾上

  • 代新征 代新征(提问者) 这里finereport版本较低,找不到哪里可以勾上。
    2025-08-12 13:40 
  • 4关注人数
  • 74浏览人数
  • 最后回答于:4 天前
    请选择关闭问题的原因
    确定 取消
    返回顶部