Oracle Apex - 选择列表填充文本字段

Ste*_*lsh 2 select list dynamic oracle-apex

我正在使用Oracle Apex 4.2.我有一个选择列表和一个文本字段.我正在尝试创建一个应该足够简单的动态动作,但我不知道该怎么做.基本上,根据用户从选择列表中的值列表中选择的值,应该填充文本字段.例如:

假设选择列表让用户可以选择"动物","汽车","人物".如果用户选择"Animal",则文本字段应立即具有值"cat".如果用户选择"Car",则文本字段应立即具有值"toyota".如果用户选择'Person @,则文本字段应立即具有值'jim'等.

我该怎么做这个动态的动作?

谢谢,斯蒂芬.

Ro *_*ton 7

使用以下属性创建新的动态操作

主要特性

  • 事件:改变
  • 选择类型:项目
  • 项目:[选择列表]
  • 条件:无条件

真实行动

  • 操作:执行PL/SQL代码
  • Fire当事件结果为:True时
  • PL/SQL代码:

    选项1 - 使用查找表

    select LOOKUP_VALUE
    into :P1_TEXT
    from LOOKUP_TABLE
    where original_value = :P1_SELECT_LIST;
    
    Run Code Online (Sandbox Code Playgroud)

    选项2 - 使用硬编码值

    CASE upper(:P1_SELECT_LIST)
        WHEN 'ANIMAL' THEN :P1_TEXT := 'cat';
        WHEN 'CAR' THEN :P1_TEXT := 'toyota';
        WHEN 'PERSON' THEN :P1_TEXT := 'jim';
        ELSE :P1_TEXT := null;
    END CASE;
    
    Run Code Online (Sandbox Code Playgroud)
  • 要提交的页面项目:[P1_SELECT_LIST]

  • 要返回的页面项目[P1_TEXT]