天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 2434|回复: 5

[已解决] 关于表单中文本框无值时隐藏,但拟稿时需要显示

[复制链接]
网络菜菜 发表于 2025-3-6 17:10:03 | 显示全部楼层 |阅读模式
【myApps/OBPM版本号】:v5.1- F社区版
【浏览器类型】:Chrome/其他
【联系方式-QQ】:260217944
【联系电话】:    请留下您的联系电话,以便技术同事更好解决您的问题
【问题描述】:表单中有文本框,我需要拟稿时可以选择是否填入该值,但到提交后续流程时,如果该文本框没有值,需要在手机审批时隐藏该控件。

我的代码如下:无实现手机无值隐藏

(function () {
    var doc =  getCurrentDocument();
    var author = doc.getAuthor().getName();
//    var istmp = doc.getIstmp();
    var istmp = doc.getItemValueAsString("主办部门2");
    var isHidden = false;
    if (istmp == ""){
        isHidden = true;
    }if(author){
        isHidden = false;     
    }
    return isHidden;
})()


1、问题描述最好图文并茂,如有视频/脚本可直接放出,这样技术同事在处理该问题时效率更加高效哦~
2、如果该问题已得到解决,请在该帖子下回复\\\\\\\"已解决可结帖\\\\\\\"

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
yaya 发表于 2025-3-6 18:05:03 | 显示全部楼层
看您这脚本,好像两个判断都进去了,如果需要可以根据临时表、流程状态这些来判断,如只是手机端隐藏,电脑端字段不隐藏的话,可以通过该脚本判断var user = getWebUser();
  var isMobileVisit = user.getEquipment();  //isMobileVisit  0 电脑,1 手机
 楼主| 网络菜菜 发表于 2025-3-7 13:23:15 | 显示全部楼层
yaya 发表于 2025-3-6 18:05
看您这脚本,好像两个判断都进去了,如果需要可以根据临时表、流程状态这些来判断,如只是手机端隐藏,电脑 ...

我代码修改如下:
(function () {
    var doc =  getCurrentDocument();
    var author = doc.getAuthor().getName();
    var user = getWebUser();
    var isMobileVisit = user.getEquipment();
//    var istmp = doc.getIstmp();
    var istmp = doc.getItemValueAsString("主办部门2");
    var isHidden = false;
    if (istmp == "" && isMobileVisit){
        isHidden = true;
    }//if(author && isMobileVisit){
//       isHidden = false;     
//   }
    return isHidden;
})()

这样可以实现电脑端拟稿,可以输入“主办部门2”;当主办部门2无值时,手机端都可以隐藏该插件;
但是如果用手机拟稿时,就只能输主办部门1了,主办部门2都隐藏了。(当初我设想用拟稿时不作隐藏,但发现if(author == user)条件恒不等,即使它们打印输出的中文名是一样的。)
yaya 发表于 2025-3-10 18:42:28 | 显示全部楼层
网络菜菜 发表于 2025-3-7 13:23
我代码修改如下:
(function () {
    var doc =  getCurrentDocument();

要判断isMobileVisit等于0还是等于1,可以再加一层判断,通过临时表还是申请人节点来判断
 楼主| 网络菜菜 发表于 2025-3-12 15:40:05 | 显示全部楼层
yaya 发表于 2025-3-10 18:42
要判断isMobileVisit等于0还是等于1,可以再加一层判断,通过临时表还是申请人节点来判断

工程师,可以具体显示下临时表还是申请人节点来判断的代码吗?
yaya 发表于 2025-3-12 17:58:06 | 显示全部楼层
网络菜菜 发表于 2025-3-12 15:40
工程师,可以具体显示下临时表还是申请人节点来判断的代码吗?

您说的拟稿是在流程发起人节点?
var istmp = doc.getIstmp();//true为临时表
var state = fd.getStateLabel();
if(state.equals("申请人")||state.equals(""))

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 11:28

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表