Oracle Apex 复选框

Oracle Apex checkbox

我的应用程序中有一个带有复选框选项的页面。 这个想法基本上是允许用户 select/unselect 如果需要为每个销售代表应用更改。像这样: 如果选中复选框 = 更改将应用​​于代表拥有的所有区域 如果未单击复选框 = 更改将仅应用于 selected 地区

我似乎无法让复选框点击选项起作用。 我正在使用一个 instr 函数从中获取一个值,但它不起作用:

select instr(':' ||:P11_CHECK_FOR_ALL|| ':', 'Request') 从 dual;v_number_terr 进入 v_number_terr

如果v_number_terr >0

(P11_CHECK_FOR_ALL 是我的复选框项目/'Request' 是一个单词,是其标签的一部分)

my checkbox pic

我正在尝试捕获(在进程中)该选项是否被选中。 有人可以帮帮我吗?

谢谢!

在顶点中,复选框的行为就像 select 列表(可能有多个 select)。有一个显示值和一个return值。如果没有 selected,页面项目值将为空。如果一个或多个值被 selected,页面项目将包含一个冒号分隔的 selected return 值列表。 要在页面进程中处理 select 列表,最简单的方法是使用 APEX_STRING.SPLIT

将冒号分隔的列表拆分为各个值

示例(未经测试):

DECLARE
  l_check_for_all apex_t_varchar2;
BEGIN
  l_check_for_all := apex_string.split(:P11_CHECK_FOR_ALL,':');
  -- loop through the values. If nothing is selected then the COUNT will be 0 and nothing will be executed.
  FOR i IN 1 .. l_check_for_all.COUNT LOOP
    // do your pl/sql magic. You can reference the current item with l_check_for_all(i)
  END LOOP;
END;