Oracle Apex:区域在验证后不隐藏
Oracle Apex: Region Not Hiding after Validation
我有两个区域,第二个区域应该 show/hide 如果一个字段是否为空。
我尝试了不同的方法,但在验证后第二个区域没有隐藏。
- 按钮验证字段:如果值存在则在数据库中搜索
- 如果值存在填充隐藏字段(val_id)
- 如果 val_id 为空,按钮中的动态操作隐藏区域
验证发生但区域未隐藏:
顶点是这样工作的:
- 页面已呈现
- 用户操纵屏幕上的数据
- 页面已提交,validations/processes已执行。
如果您有兴趣,文档会更详细地告诉您。动态操作允许您在阶段 (2) 中以声明方式添加功能,因为您需要访问 DOM。一旦页面提交 (3),您就不能再操作 DOM,因此不能再使用动态操作。为了执行验证,您必须提交页面。
不幸的是,我没有 apex5.1 实例,但下面的逻辑应该适合你。
有 2 个选项可以解决您的问题
- 使用动态操作执行搜索。设置一个隐藏的页面项目(例如,如果找到结果,则 P1_SHOW_DETAILS 到 'Y',如果没有找到,则设置 'N'。然后在 P1_SHOW_DETAILS 更改时创建第二个动态操作,操作 show/hide
- 不要使用动态 actions/validations。使用提交后在页面处理中设置的页面项目 P1_SHOW_DETAILS 并分支到在分支中设置 P1_SHOW_DETAILS 值的同一页面。然后在该区域设置服务器端条件,仅在 P1_SHOW_DETAILS = 'Y' 时呈现。
在这两种情况下,您都必须找到另一种方式来显示“ESN 不存在”消息(您可以为此使用警报区域)。
附带说明:您有一个名为“VAL_ID”的页面项目。使用命名约定 P_ 是一种很好的做法。页面项目在整个应用程序中必须是唯一的,如果您必须在查看“VAL_ID”的位置调试代码,您将如何知道去查看哪个页面。还有很多其他原因,但这超出了这个问题的范围。
我有两个区域,第二个区域应该 show/hide 如果一个字段是否为空。 我尝试了不同的方法,但在验证后第二个区域没有隐藏。
- 按钮验证字段:如果值存在则在数据库中搜索
- 如果值存在填充隐藏字段(val_id)
- 如果 val_id 为空,按钮中的动态操作隐藏区域
验证发生但区域未隐藏:
顶点是这样工作的:
- 页面已呈现
- 用户操纵屏幕上的数据
- 页面已提交,validations/processes已执行。
如果您有兴趣,文档会更详细地告诉您。动态操作允许您在阶段 (2) 中以声明方式添加功能,因为您需要访问 DOM。一旦页面提交 (3),您就不能再操作 DOM,因此不能再使用动态操作。为了执行验证,您必须提交页面。 不幸的是,我没有 apex5.1 实例,但下面的逻辑应该适合你。
有 2 个选项可以解决您的问题
- 使用动态操作执行搜索。设置一个隐藏的页面项目(例如,如果找到结果,则 P1_SHOW_DETAILS 到 'Y',如果没有找到,则设置 'N'。然后在 P1_SHOW_DETAILS 更改时创建第二个动态操作,操作 show/hide
- 不要使用动态 actions/validations。使用提交后在页面处理中设置的页面项目 P1_SHOW_DETAILS 并分支到在分支中设置 P1_SHOW_DETAILS 值的同一页面。然后在该区域设置服务器端条件,仅在 P1_SHOW_DETAILS = 'Y' 时呈现。 在这两种情况下,您都必须找到另一种方式来显示“ESN 不存在”消息(您可以为此使用警报区域)。
附带说明:您有一个名为“VAL_ID”的页面项目。使用命名约定 P