Oracle apex_item.checkbox2命名参数时的行为

Oracle apex_item.checkbox2命名参数时的行为,oracle,checkbox,plsql,oracle-apex,Oracle,Checkbox,Plsql,Oracle Apex,此查询返回我在Oracle apex的SQL命令窗口中期望的复选框html: SELECT APEX_ITEM.CHECKBOX2(1,empno,DECODE(deptno,10,'CHECKED',NULL)) "Select", ename, job FROM emp WHERE deptno = 10 i.e. <input type="checkbox" name="f01" value="7782" CHECKED /> 唯一的区别是“检查”了吗 您使用的p\u检

此查询返回我在Oracle apex的SQL命令窗口中期望的复选框html:

SELECT APEX_ITEM.CHECKBOX2(1,empno,DECODE(deptno,10,'CHECKED',NULL)) "Select", ename, job
FROM emp
WHERE deptno = 10

i.e. <input type="checkbox" name="f01" value="7782" CHECKED />  
唯一的区别是“检查”了吗

您使用的
p\u检查值
错误:

:

p_checked_值
:默认情况下要检查的值

基本上,当使用
p\u checked\u值时,您将传入一个分隔值列表,在列表
p\u checked\u值
中的
p\u checked\u值
处将使用
'checked'
指示符为其指定分隔值(由参数
p\u checked\u values\u delimiter
分隔)。它以前工作的原因是您将其作为第三个参数传递,实际上是
p_attributes
,它直接进入生成的HTML标记,而不进行解析或更改。要修复代码,请使用以下命令,因为传递给
p\u value
的值不确定
CHECKED'
属性:

SELECT APEX_ITEM.CHECKBOX2(p_idx=>1,p_value=>empno,p_attributes=>DECODE(deptno,10, 'CHECKED',NULL)) "Select", ename, job
FROM emp
WHERE deptno = 10

明亮的我知道我必须错过一些明显的东西,但我不认为我会发现这一点。感谢您花时间提供帮助和详细解释!
APEX_ITEM.CHECKBOX2(
p_idx                       IN    NUMBER,
p_value                     IN    VARCHAR2 DEFAULT NULL,
p_attributes                IN    VARCHAR2 DEFAULT NULL,
p_checked_values            IN    VARCHAR2 DEFAULT NULL,
p_checked_values_delimiter  IN    VARCHAR2 DEFAULT ':',
p_item_id                   IN    VARCHAR2 DEFAULT NULL,
p_item_label                IN    VARCHAR2 DEFAULT NULL)
RETURN VARCHAR2;
SELECT APEX_ITEM.CHECKBOX2(p_idx=>1,p_value=>empno,p_attributes=>DECODE(deptno,10, 'CHECKED',NULL)) "Select", ename, job
FROM emp
WHERE deptno = 10