想要点击JS修改参数值,再点击一下则参数值变回原来的

版本:10.0

普通报表,参数为参数面板中的参数,点击报表主体某单元格内文字,可修改参数面板中参数的值,希望再点击一下,刚刚修改的参数值再变回原来的。求指教!

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

下图是目前做的样子,不太懂怎么再点一下让参数值变回去。

我把js改成了条件判断,好像点击就没反应啦 请问是哪里的问题呀?11.png

微信截图_20231218151320.png

FineReport haha11 发布于 2023-12-18 15:16 (编辑于 2023-12-18 15:40)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
用户k6280494Lv6资深互助
发布于2023-12-18 15:18(编辑于 2023-12-18 15:38)

搞两个控件

在点击的时候,把要修改的控件值赋值给另一个隐藏控件

在次点击取隐藏控件值赋值给不隐藏的控件

var a =  _g().parameterEl.getWidgetByName('a'); 

var a1 = _g().parameterEl.getWidgetByName('a1'); 

if(a.getValue().length=0 || a.getValue()=="苹果汁" ){ 

a1.setValue('牛奶'); 

a.setValue('苹果汁'); 

}

else{ 

a1.setValue('苹果汁'); 

a.setValue('牛奶'); 

}; 

_g().parameterCommit(); 

  • haha11 haha11(提问者) 嗯嗯,请问写js的时候怎么写呢?不太懂如何判断第1次点击和第2次点击?
    2023-12-18 15:21 
  • 用户k6280494 用户k6280494 回复 haha11(提问者) 用控件值判断
    2023-12-18 15:21 
  • haha11 haha11(提问者) 回复 用户k6280494 好 感谢!我先去试试
    2023-12-18 15:24 
  • haha11 haha11(提问者) var a = 0 var a1 = _g().parameterEl.getWidgetByName(\'a1\'); if(a=0){ a1.setValue(\'牛奶\'); }else{ a1.setValue(\'苹果汁\'); }; _g().parameterCommit(); 抱歉打扰,我按照您的方法这样改了一下,但是点击后没有反应,请问是哪里的问题呀?
    2023-12-18 15:34 
  • 用户k6280494 用户k6280494 回复 haha11(提问者) 你的a也要是个控件,参考回答里的js吧
    2023-12-18 15:39 
最佳回答
0
CovidLv3中级互助
发布于2023-12-18 15:17

再增加一个辅助控件保留点击前的值

https://help.fanruan.com/finereport10.0/doc-view-4007.html 

  • haha11 haha11(提问者) 不好意思,没太理解您的意思,方便详细说一下嘛?
    2023-12-18 15:20 
  • Covid Covid 回复 haha11(提问者) 参考上面链接中的接口。增加一个辅助控件,每次都获取一下该控件值和你要传递的值,当两个值不一样的时候就修改控件值和辅助控件值一致,当两个值一样就给控件(非辅助控件)赋新值
    2023-12-18 15:24 
  • haha11 haha11(提问者) 回复 Covid 感谢您的回复!不过,我每次点击修改的参数不止一个,这样是不是要增加多个辅助控件呀?
    2023-12-18 15:35 
  • Covid Covid 回复 haha11(提问者) 一个或多个都可以,各有各的方便,也各有各的麻烦
    2023-12-18 15:37 
  • haha11 haha11(提问者) 回复 Covid 哈哈是咧 我试了一下条件判断 但是不太行 请问您能帮忙看一下是哪里的问题吗? var a = 0 var a1 = _g().parameterEl.getWidgetByName(\'a1\'); if(a=0){ a1.setValue(\'牛奶\'); }else{ a1.setValue(\'苹果汁\'); }; _g().parameterCommit();
    2023-12-18 15:39 
  • 2关注人数
  • 186浏览人数
  • 最后回答于:2023-12-18 15:40
    请选择关闭问题的原因
    确定 取消
    返回顶部