找文章 / 找答案
精选问答 更多内容

怎样用脚本控制表格组件,刷新显示呢,求老师教

好好学习玄铁三 显示全部楼层 发表于 2021-4-15 10:46:42
永洪tech-zyc 发表于 2021-4-15 10:45
这边要不考虑把这三个表放在轮播组件里呢,从报表设计的角度。脚本的话比较麻烦,如果不能用选项卡的话 ...

轮播不能套轮播吧,这个就是要放在一页轮播页里的
回复 支持 反对

使用道具 举报

永洪tech-zyc铂金四 显示全部楼层 发表于 2021-4-15 10:56:59
prx 发表于 2021-4-15 10:46
轮播不能套轮播吧,这个就是要放在一页轮播页里的

是不能但是可以把他独立出来吗,从设计的角度
回复 支持 反对

使用道具 举报

美滋滋白银二 显示全部楼层 发表于 2021-4-15 11:04:38
我倒是有一个小思路。
我的想法是报表设定一个参数,然后报表设定5秒一循环,每次循环时该参数加1,然后用该参数除以你要轮播组件的个数,用余数来控制组件的显示与否,应该可以达到你的需求
回复 支持 反对

使用道具 举报

永洪tech-zyc铂金四 显示全部楼层 发表于 2021-4-15 11:08:42
本帖最后由 永洪tech-zyc 于 2021-4-15 11:15 编辑
lijie 发表于 2021-4-15 11:04
我倒是有一个小思路。
我的想法是报表设定一个参数,然后报表设定5秒一循环,每次循环时该参数加1,然后用 ...

这样不行,我尝试了 用interval 循环,但是他循环的是脚本自身,并不能缓存执行的次数,每次都会从新赋值计算。无法判断循环次数。下面是我写的模拟脚本 ,param["a"] 初始化为1,模拟两个组件循环切换。测试结果,a的值一直2,觉得需要实现一个锁的机制,实现缓存下执行的次数

//装载时
param[ = 1
var a = param[


//运行时

interval = 5
debug(param["a")
a++
debug(a)
if(a<=2){
    if(a==1){
提交1.visible = true
图表1.visible= true
提交2.visible = false
图表2.visible = false
}else if(a == 2){
提交1.visible = false
图表1.visible= false
提交2.visible = true
图表2.visible = true
}
}else {
a = 1
}



回复 支持 反对

使用道具 举报

美滋滋白银二 显示全部楼层 发表于 2021-4-15 11:15:07
本帖最后由 lijie 于 2021-4-15 11:16 编辑

在参数设置中设置参数默认值,然后在装载时部署你的脚本,不要在变化时部署同时不是用a的值来判断,是用a除以你要控制轮播的个数,比如你的例子中,用a除以2,然后取余。用余数来判断。
比如余数是0显示哪些组件,隐藏哪些组件;余数是1显示哪些组件,隐藏哪些组件
回复 支持 反对

使用道具 举报

永洪tech-zyc铂金四 显示全部楼层 发表于 2021-4-15 11:22:22
lijie 发表于 2021-4-15 11:15
在参数设置中设置参数默认值,然后在装载时部署你的脚本,不要在变化时部署同时不是用a的值来判断,是用a除 ...

我试试 改改
回复 支持 反对

使用道具 举报

美滋滋白银二 显示全部楼层 发表于 2021-4-15 11:22:35
interval = 5
param["a"] = param["a"] + 1
if(param["a"]%2 == 0){
提交1.visible = true
图表1.visible= true
提交2.visible = false
图表2.visible = false
}else if(param["a"]%2 == 1){
提交1.visible = false
图表1.visible= false
提交2.visible = true
图表2.visible = true
}
回复 支持 反对

使用道具 举报

永洪tech-zyc铂金四 显示全部楼层 发表于 2021-4-15 11:29:05
lijie 发表于 2021-4-15 11:22
interval = 5
param["a"] = param["a"] + 1
if(param["a"]%2 == 0){

可以的,无论装载时和变化时都可以,我不应该在脚本中给与赋值和传值
interval = 5
debug(param["a"])
param["a"]++
debug(param["a"])
if(param["a"]%2==0){
提交1.visible = true
图表1.visible= true
提交2.visible = false
图表2.visible = false
}else{
提交1.visible = false
图表1.visible= false
提交2.visible = true
图表2.visible = true
}

回复 支持 反对

使用道具 举报

美滋滋白银二 显示全部楼层 发表于 2021-4-15 11:31:14
本帖最后由 lijie 于 2021-4-15 11:32 编辑

搞定了吧?最好放在装载时。不过这个方法只是我的一个小思路,其实并不是很好,等于是让你的报表每5秒重新加载一次,如果报表直连数据库的话,也会同时增加数据库访问。
回复 支持 反对

使用道具 举报

永洪tech-zyc铂金四 显示全部楼层 发表于 2021-4-15 11:32:17
lijie 发表于 2021-4-15 11:22
interval = 5
param["a"] = param["a"] + 1
if(param["a"]%2 == 0){

赞,赞~~
回复 支持 反对

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部