请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

金麒麟-信息部

金牌服务用户

204

主题

437

帖子

2041

积分

金牌服务用户

积分
2041
金麒麟-信息部
金牌服务用户   /  发表于:2022-6-24 11:15  /   查看:2326  /  回复:9
20金币
本帖最后由 Chelsey.Wang 于 2022-6-27 14:43 编辑

版主好,
    使用js编程,有没有办法能获取到当前页面的控件集合,然后遍历集合将里面所有的值取出来。


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

最佳答案

查看完整内容

版主, 使用下面的JS代码可以实现页面控件的遍历取值,转为JSON字符串。非常通用,记录下来吧,帮助下一个需要的人。 PS:对于一些简单的用户自定义场景,使用活字格自带的命令确实无法实现,期望你们能有个特殊应用场景的JS代码库,让我们这些用户可以去参考。 var strJson1="{"; $("[fgcname]").each(function () { //console.log($(this).attr("fgcname")); var key=$(this).attr("fgcname"); consol ...

9 个回复

倒序浏览
最佳答案
最佳答案
金麒麟-信息部
金牌服务用户   /  发表于:2022-6-24 11:15:39
来自 4#
本帖最后由 金麒麟-信息部 于 2022-6-24 15:39 编辑
Chelsey.Wang 发表于 2022-6-24 13:41
理论上是可行的,不过这个代码写起来可能会比较复杂,代码方面我们也不是很擅长。
感觉大佬可能想复杂了, ...


版主,
    使用下面的JS代码可以实现页面控件的遍历取值,转为JSON字符串。非常通用,记录下来吧,帮助下一个需要的人。
   PS:对于一些简单的用户自定义场景,使用活字格自带的命令确实无法实现,期望你们能有个特殊应用场景的JS代码库,让我们这些用户可以去参考。

var strJson1="{";
$("[fgcname]").each(function () {
  //console.log($(this).attr("fgcname"));
  var key=$(this).attr("fgcname");
  console.log(key);
  if ( key.toLowerCase().indexOf("tablename")<0 && key.toLowerCase().indexOf("strjson")<0)
  {
        var value1=  Forguncy.Page.getCell(key).getValue();
        if(value1 == null) value1="";
        console.log(value1);
        strJson1=strJson1+ "\"" +key.toString()+"\""+"\:"+"\""+ value1.toString() +"\""+",";  
  }
});
strJson1=strJson1.slice(0,-1)+"}";
Forguncy.Page.getCell("strJson1").setValue(strJson1);  


本帖子中包含更多资源

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

x
回复 使用道具 举报
Chelsey.Wang讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-6-24 13:41:57
2#
理论上是可行的,不过这个代码写起来可能会比较复杂,代码方面我们也不是很擅长。
感觉大佬可能想复杂了,您可以说一下您具体是想要实现怎样的功能呢,帮您看一下有没有更合适的解决方案~
回复 使用道具 举报
金麒麟-信息部
金牌服务用户   /  发表于:2022-6-24 14:30:40
3#
Chelsey.Wang 发表于 2022-6-24 13:41
理论上是可行的,不过这个代码写起来可能会比较复杂,代码方面我们也不是很擅长。
感觉大佬可能想复杂了, ...

想找到一种通用的方式,把页面详情的内容组装成一个JSON,将该JSON传到后台api去执行。
回复 使用道具 举报
逛逛逛
金牌服务用户   /  发表于:2022-6-24 16:03:45
5#
金麒麟-信息部 发表于 2022-6-24 15:37
版主,
    使用下面的JS代码可以实现页面控件的遍历取值,转为JSON字符串。非常通用,记录下来吧,帮 ...

你绑定表的,为什么不直接提交啊?
回复 使用道具 举报
金麒麟-信息部
金牌服务用户   /  发表于:2022-6-24 16:24:01
6#
逛逛逛 发表于 2022-6-24 16:03
你绑定表的,为什么不直接提交啊?

如果你想,先判断他有没有添加或修改的权限,修改完后再记录日志,那应该怎么实现呢。
回复 使用道具 举报
逛逛逛
金牌服务用户   /  发表于:2022-6-24 16:29:46
7#
金麒麟-信息部 发表于 2022-6-24 16:24
如果你想,先判断他有没有添加或修改的权限,修改完后再记录日志,那应该怎么实现呢。

先走马观花的看三遍帮助手册,玩起来会带劲点。
回复 使用道具 举报
Chelsey.Wang讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-6-24 17:30:43
8#
金麒麟-信息部 发表于 2022-6-24 15:37
版主,
    使用下面的JS代码可以实现页面控件的遍历取值,转为JSON字符串。非常通用,记录下来吧,帮 ...

感谢大佬的分享,不过我也有和楼上大佬同样的疑问,这样的JSON字符串,通过表格+服务端命令中的数组类型参数就可以得到了呀。
看到您是有判断修改权限的需求,活字格中的数据权限也是基于角色来设置的,因此可以通过根据当前用户的角色判断他是否有权限,然后在执行后面的逻辑。
回复 使用道具 举报
金麒麟-信息部
金牌服务用户   /  发表于:2022-6-27 10:39:48
9#
Chelsey.Wang 发表于 2022-6-24 17:30
感谢大佬的分享,不过我也有和楼上大佬同样的疑问,这样的JSON字符串,通过表格+服务端命令中的数组类型 ...

1、自带的行权限和字段权限需要改我们的后台表结构。
2、表格+服务端命令仅限于获取表格的JSON字符串,而且每一张表格都需要创建一个独有的服务端命令,表格多了会很繁琐。我要获取的不是表格的JSON,是页面控件的JSON,这样自带的命令是做不到的。
回复 使用道具 举报
Chelsey.Wang讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-6-27 14:42:35
10#
金麒麟-信息部 发表于 2022-6-27 10:39
1、自带的行权限和字段权限需要改我们的后台表结构。
2、表格+服务端命令仅限于获取表格的JSON字符串, ...

明白了,原来大佬的情景是这样的,有多个页面的话确实使用JS来处理会更加方便,感谢大佬的分享,已经将您的回答设置为最佳答案,希望可以帮到后续遇到类似问题的格友们~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部