如果我使用& APP_BRCODE访问该值,我有一个应用程序项 - APP_BRCODE(不是页面项)。我可以检索该值,但我无法使用javasctipt设置该值。 $ s('APP_BRCODE',值)不起作用
答案 0 :(得分:1)
单独使用Javascript只能更改已在页面上呈现的项目的值 - 即页面项目。要更改应用程序项的值,需要调用数据库 - 提交页面或进行AJAX调用。您可以使用以下Javascript代码进行AJAX调用:
<GridView IsHitTestVisible="{Binding IsLoaded}" Style="{StaticResource LoadingGridViewStyle}" />
这会将apex.server.process
( "MY_PROCESS",
{ x01: my_var
},
{ success: function( pData ) {
},
dataType: "text"
}
);
设置为变量x01
的值并调用AJAX回调(又名“按需”)PL / SQL进程my_var
。
然后,PL / SQL进程可以设置应用程序项:
MY_PROCESS
好像很多工作似乎?也许。不知道为什么要从Javascript设置应用程序项目,很难说这是否值得。你可以设置一个隐藏的页面项目吗?
答案 1 :(得分:0)
当我寻求针对相同上下文的解决方案时,我最终看到了您的回复。
在动态操作中,
apex.server.process
( "upload_ajax_process",
{ x01: this.browserEvent.originalEvent.detail.serverId
},
{ success: function( pData ) {
},
dataType: "text"
}
);
在处理中,如下创建了回调函数“ upload_ajax_process”。 insert语句将值正确插入表中,但是页面显示项P12_DOCUMENTURL没有显示该值。我在这里想念什么?
begin
:P12_DOCUMENTURL := apex_application.g_x01;
insert into tbl_bs_commentsdoc (commentsdocid, documenturl)
values (seq_commentsdoc_commentsdocid.nextval, apex_application.g_x01);
end;