我使用他们免费提供的默认Oracle apex客户端18.2.0.00.12。
我的问题是,在对报告的长度进行动态检查之后,我的经典报告区域正在刷新。
我的主页是带有值列表的经典报告。有一个按钮可以在模式对话框中添加值。将元素添加到模态后,模态关闭,并且在我的主页上触发了动态操作以刷新报告(此方法有效)。我的问题是,刷新报告后,我再次调用了Javascript(请参见下文)以检查报告的长度。根据结果,它会显示/隐藏一个按钮。
if ($('#report_RC_ATTACH').length > 0)
{
$('#DELETE_ATTACH').show();
} else
{
$('#DELETE_ATTACH').hide();
}
我所在区域的静态ID为RC_ATTACH。我按钮的静态区域是DELETE_ATTACH。还要注意,动态动作完成后,我可以进入控制台,输入上面的代码,然后正确显示/隐藏按钮。我认为问题在于调用上述代码后刷新了区域。
我的问题:有没有办法延迟或等到刷新发生后再进行长度检查?
让我知道是否可以提供更多信息。
谢谢
答案 0 :(得分:1)
在传统报表上,您需要等待 apexafterrefresh 事件触发。您可以使用框架事件刷新后创建动态操作,该事件将等待该事件并将代码放在此处。有关详细信息,请参阅文档About Dynamic Action Events。