Oracle Apex:PL / SQL块中的Javascript代码
是否有可能在PL / SQL块中拥有JavaScript代码。 我想在oracle Apex页面进程中执行包含JavaScript代码的pl / sql块。
DECLARE
v_count NUMBER;
BEGIN
select count(*) into v_count
from summary
where prd_items = 'Total';
HTP.p ('<script type="text/javascript">');
HTP.p ( 'alert(''The value of Total for BU is ' ||v_count|| '.n'
|| 'You have to enter correct values to proceed further n'');');
HTP.p ('</script>');
END;
我在我的页面区域有Submit
按钮,这个pl / sql块是页面处理项目,并在页面提交( Conditional:Submit
)时执行。
但我无法弹出警告框。 请指教。
谢谢。
是否有可能在PL / SQL块中拥有JavaScript代码?
但是,你试图做的不会工作,这是传递JavaScript函数AFTER SUBMIT.It只会工作,如果你将执行点改为AFTER HEADER。
或者,如果您只想验证输入的值并且不想使用apex验证,则可以使用APEX_ERROR包。尝试此操作。
DECLARE
v_count NUMBER;
BEGIN
select prd_items into v_count
from summary
where prd_items = 'Total';
-- I dont really know what you want to
--accomplish with this query but Im pretty sure
--It will not return a number
-- if you want to count the number of prd_items it should be like this
--select COUNT(*)
--into v_count
--from summary
--where prd_items = 'Total';
APEX_ERROR.ADD_ERROR(
p_message => 'The value of Total for BU is '||v_count||'.<br>'||
'You have to enter correct values to proceed further',
p_display_location => apex_error.c_inline_in_notification
);
END;
编辑:如果你想显示错误,如果计数不等于100,然后做这样的事情:
DECLARE
v_count NUMBER;
BEGIN
Select COUNT(*)
into v_count
from summary
where prd_items = 'Total';
IF v_count != 100 THEN
APEX_ERROR.ADD_ERROR(
p_message => 'The value of Total for BU is '||v_count||'.<br>'||
'You have to enter correct values to proceed further',
p_display_location => apex_error.c_inline_in_notification
);
END IF;
END;
要从pl / sql过程嵌入javascript代码,您必须将过程放在“Before Header”点之前。 但我不认为这是您尝试实现的最佳解决方案。
你想要做的是添加验证权限? 如果是这样,为什么不使用顶点验证。 用这样的选项创建验证:
DECLARE v_count NUMBER;
V_validation_msg VARCHAR2(500);
BEGIN
SELECT prd_items INTO v_count FROM summary WHERE prd_items = 'Total';
V_validation_msg:='The value of Total for BU is ' ||v_count|| '.n' || 'You have to enter correct values to proceed further';
IF 1= 1 THEN --add some condition here if you want
RETURN V_validation_msg;
ELSE
RETURN NULL;
END IF;
END;
上一篇: Oracle Apex: Javascript code in PL/SQL Block
下一篇: Fail to import android support v4 or v7 in library using productFlavors