是否有一种方法可用于“外部”的数据过滤;JavaScript初始化代码";
在使用APEX(18.2)技术开发应用程序时,可以在AppBuilder->Advanced->“JavaScript初始化代码”下为图表提供自定义数据过滤器回调。在我的例子中,我这样做是为了计算标签值。 以下是我的工作解决方案,它基于App Builder中帮助页面中的示例:是否有一种方法可用于“外部”的数据过滤;JavaScript初始化代码";,javascript,oracle-apex-5.1,oracle-jet,Javascript,Oracle Apex 5.1,Oracle Jet,在使用APEX(18.2)技术开发应用程序时,可以在AppBuilder->Advanced->“JavaScript初始化代码”下为图表提供自定义数据过滤器回调。在我的例子中,我这样做是为了计算标签值。 以下是我的工作解决方案,它基于App Builder中帮助页面中的示例: function( options ){ // Setup a callback function which gets called when data is retrieved, it allows to
function( options ){
// Setup a callback function which gets called when data is retrieved, it allows to manipulate the series
options.dataFilter = function( data ) {
series = data.series;
$.each(series[0].items, function (_i, item) {
if (item.value) {
item.label = (Math.round(item.value*100)/100).toString();
item.labelPosition = 'outsideBarEdge';
}
});
data.series[ 0 ].color = "#00FF00";
return data;
};
return options;
}
每次更改该图表的数据系列时,都将调用此函数。
问题:每次数据系列更改时,只要图表初始化,就会调用数据过滤器回调
现在,我想在包含此图表的区域刷新后,稍后调用另一个回调(即从动态操作),以稍微不同的方式操作数据(与问题无关)
是否有办法确定数据系列已完全加载且数据对象已准备好进行操作?
提前谢谢。
另外,我的第一个问题是关于stackoverflow的,希望它能提供足够的信息
我已尝试定期检查图表的data.series属性,并在该属性不为null时调用自定义数据筛选函数。此解决方案的问题是(这是一种弄脏的方式),一个图表可以有两个y轴,并且只要加载一个y轴的数据,此解决方案就会开始处理数据。
因为我正在计算标签-第二个数据系列(对于第二个y轴)将没有标签
我定期检查data.series的脏解决方案不应该成为新解决方案的起点,因此我决定不发布它
预期结果:当从动态操作中为图表调用新的数据筛选器回调时,图表的所有数据系列都为其所有点预先计算了标签值。Hi,我对在动态操作中执行Javascript代码(您问题中提到的代码)有同样的问题。你找到解决这个问题的方法了吗?嗨,兔子,很遗憾没有人回答这个问题,我也找不到任何可行的解决办法。我也在Oracle社区顶点论坛上发布了这个问题,但没有效果。