You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle APEX Popup LOV如何存储隐藏值及使用HIDDENVALUE?

Oracle APEX Popup LOV 隐藏值配置与HIDDENVALUE项使用

完全可以实现显示用户名、后台存储并获取ID的需求,Popup LOV自带的HIDDENVALUE项就是专门干这个的,具体操作如下:

一、实现显示值与返回值分离

Popup LOV本身支持显示值和返回值的分离配置,不需要额外自定义隐藏项:

  • 在Popup LOV的「List of Values」属性中,编写PL/SQL查询时遵循SELECT 显示值, 返回值 FROM 数据源的格式,比如你的场景:
    SELECT username AS display_value, user_id AS return_value FROM users
    
    这里display_value是前端展示的用户名,return_value是后台实际存储的用户ID,APEX会自动处理两者的关联。
  • 后续在PL/SQL中获取该Popup LOV项的值时,直接通过:PXX_POPUP_LOV_ITEM(XX为页面编号)就能拿到对应的用户ID,而非显示的用户名。

二、HIDDENVALUE项的作用与使用

Popup LOV自带的HIDDENVALUE项是APEX内部维护的隐藏元素,用于存储返回值(即上面的return_value):

  • 默认情况下,创建Popup LOV时APEX会自动生成一个隐藏项,命名规则通常为PXX_POPUP_LOV_ITEM_HIDDEN,它会在用户选择Popup LOV选项时自动同步更新值,无需手动维护。
  • 若需手动指定隐藏项,可在Popup LOV的属性中找到「Hidden Value」选项,选择一个已创建的隐藏项即可,但一般无需手动操作,默认的自动关联已满足需求。
  • 注意:无需手动修改该隐藏项的值,直接引用Popup LOV的主项(:PXX_POPUP_LOV_ITEM)就能获取到ID,效果和引用隐藏项完全一致。

快速验证

可以在页面添加一个按钮,点击后执行以下PL/SQL代码,通过调试日志确认获取到的是ID:

apex_debug.message('获取到的用户ID: %s', :P1_USER_POPUP_LOV);

内容的提问来源于stack exchange,提问作者Filip Degenhart

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 08:50:36