0

我正在使用 Oracle ApEx v4.1 和动态操作,它基本上调用一个 javascript 函数,该函数又调用一个按需进程将数据保存到数据库。

只是一点背景知识,当用户按下“保存”按钮或“下一步”按钮时,我使用 jQuery 扫描每个元素及其值,然后将这些元素与值传递到上面需求过程。

我的问题/问题是,有时该过程似乎缺少传入的数据,我不确定为什么,我认为也许在我的动态操作中我正在执行 ape.submit('SUBMIT') 以及对按需进程的 JavaScript 函数调用。

我是否需要延迟其中一个电话,因为目前,我不确定为什么它有时会起作用,而有时却不起作用。

关于如何布置代码的任何想法,即

apex.submit('SUBMIT');
saveTheData();    <-- calls my ondemand process to save data to database
4

1 回答 1

2

首先,让我们回到您之前的问题。你到底在做什么。这似乎非常不必要!

无论如何,当您提交页面时,有什么理由在 jQuery 中收集项目值并将它们提交到会话状态?当您使用下一个/上一个/应用按钮并且页面提交时,项目的值处于会话状态,您可以在进程中使用它们。

您正在使用 apex.submit 提交页面。这将提交页面,并将所有项目的值设置为会话状态。您执行 JavaScript 函数,该函数将调用按需流程,为流程提供值。这些值是页面项目值,因此您实际上只是在按需流程中设置会话状态。老实说,您似乎正在进行一个真正古怪的设计!

至于为什么它有时有效,有时无效:apex.submit将提交页面。就像,马上。如果您需要在处理页面之前执行代码,请在提交之前执行。请注意,如果您要换行,它可能仍然无法正常工作,这取决于您如何调用按需流程(异步或同步),以及您是否希望成功函数执行某些操作。如果调用是异步的,则可能是在提交完成之前未处理您的成功函数。

于 2013-03-18T13:53:54.310 回答