如何根据当前所选人员是否有活动的待处理请求在 Oracle APEX 中动态显示静态文本区域?

问题描述 投票:0回答:1
  • 我有“带有自动完成功能的文本字段”(P2_EE),返回值列表为“姓氏,名字[emp #]”。
  • 在 P2_EE 更改时,我解析出 emp #、提取数据并填充一些只读页面项目。
  • 我想有条件地显示一个静态文本块,该文本块会警告所选人员是否在应用程序中已有待处理的请求。 该块需要根据 P2_EE 中的任何选择更改来隐藏或显示。
  • 我尝试将其作为一个 on-change 动态操作(在上面列出的 on-change 事件之后运行),它also 具有基于 sql 的“返回行”的服务器端条件(它检查 emp 是否# 已经有一个待处理的请求)。 然后,当 true 时,我在静态文本区域上执行一个简单的 Show 操作。

不幸的是,文本块永远不会显示。

如有任何想法/建议,我将不胜感激。

谢谢你。

oracle oracle-apex
1个回答
0
投票

文本块从不显示的原因是服务器端的情况。这是在页面渲染时评估的,并且不会再次重新评估。

有几种方法可以解决这个问题,但最简单的是创建一个帮助页面项“P2_EE_SHOW_WARNING”。

在 on-change 动态操作中,添加“执行服务器端代码”类型的操作,以将此项目设置为 Y 或 N(确保“要返回的项目”具有“P2_EE_SHOW_WARNING”)。 (此操作执行您问题中的服务器端条件应该执行的操作)。

添加带有客户端条件的显示操作

apex.items.P2_EE_SHOW_WARNING.getValue() === 'Y'
和隐藏操作
apex.items.P2_EE_SHOW_WARNING.getValue() === 'N'
.

让我知道事情进展如何,如果需要,我可以整理一个示例。

© www.soinside.com 2019 - 2024. All rights reserved.