找回密码
 立即注册

QQ登录

只需一步,快速开始

Timothy.Xu 讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2020-9-27 15:08  /   查看:2471  /  回复:3
最近有一位格友碰到一个问题,如果页面上有一个按钮A,同页面某一个下拉菜单有一个按钮C,如果我想点击按钮C的时候调用按钮A的功能,就像下面的示意图一页,该怎么完成呢?


其实这个方法的核心思路非常简单,就是利用文本框作为桥梁传递命令。这里大家需要明确的一点是,文本框有一个特性,每当其值发生改变的时候,会自动调用它所附加的命令,我们就是利用这个特性实现命令的传递的。下面就给大家分享一下具体的做法~
首先,在页面A创建好按钮A(执行所需功能)、按钮B(打开下拉菜单),在下拉菜单创建按钮C(调用按钮A),然后将按钮A命名如“columnChoose”,并给按钮A与按钮B添加相应的命令,如图:



接下来我们就需要用到文本框了,我们在主页面和下拉菜单页面都创建一个文本框单元格,在主页面单元格中填一个值(随便什么都行,我这里使用“1”为值),然后在按钮B弹出下拉菜单的命令中将主页面单元格的值传到下拉菜单的单元格内,如图:

   

然后就要设置下拉菜单中按钮C的命令,需要注意的是,我们并不会给按钮C设置任何实际实现需求的命令,按钮C的作用是改变文本框的值。我们给按钮C添加一个设置单元格属性的命令,将目标单元格的值更改(依然是随便改,这里我改为“2”);
接下来是重点!我们给按钮C添加一个关闭弹出页面的命令,然后勾选[值回传],这样就可以将改动后的值传回主页面的单元格了,如图:



此时回到主页面,我们可以得知,单元格中的值已经被设为2!那么此时活字格就会调用文本框上的命令了,我们给文本框添加两个命令,首先是JS命令,需要用到下列代码:
  1. parent.$("[fgcname='columnChoose']").find("button").click();
复制代码
这段代码的意思是执行名为“columnChoose”的按钮的点击事件,相当于我们点击按钮A并执行其命令;
然后再设置一个设置单元格属性命令,将文本框的值改回1,这样就让主页面回到了最初的状态,可以再进行一次我们的功能循环啦~



这个功能虽然现在没有想好具体的应用场景,但是我觉得仍然不失为一个有趣的功能呢~









本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 1金币 +666 收起 理由
Erik.Xue + 666 赞一个!大佬牛~

查看全部评分

3 个回复

倒序浏览
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2020-9-30 10:17:53
沙发
回复 使用道具 举报
追风
注册会员   /  发表于:2023-11-10 17:44:43
板凳
不使用Js也可以实现吧
回复 使用道具 举报
Shawn.Liu活字格认证
超级版主   /  发表于:2023-11-13 11:29:45
地板
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部