Javascript 从Oracle Apex中的AJAX过程中获得多个答案

Javascript 从Oracle Apex中的AJAX过程中获得多个答案,javascript,plsql,oracle11g,oracle-apex,anychart,Javascript,Plsql,Oracle11g,Oracle Apex,Anychart,目前,我正在使用一个Oracle Apex页面,该页面有一个使用AnyChart库显示地图的区域。任务如下:我需要从数据库中获取SVG的一些记录,然后为AnyChart函数制作数组,这些函数用于创建图例,用确定的颜色填充多边形,并通过工具提示获取一些信息 我了解如何获取SVG文件或从函数$.post等开始获取包含所需数据的数组。我遇到的困难是,我希望在一个步骤中获得一条记录的SVG和从数据库生成的所有数组:执行一个JavaScript函数,该函数对确切的记录执行一个AJAX进程,从而获得我需要的

目前,我正在使用一个Oracle Apex页面,该页面有一个使用AnyChart库显示地图的区域。任务如下:我需要从数据库中获取SVG的一些记录,然后为AnyChart函数制作数组,这些函数用于创建图例,用确定的颜色填充多边形,并通过工具提示获取一些信息

我了解如何获取SVG文件或从函数$.post等开始获取包含所需数据的数组。我遇到的困难是,我希望在一个步骤中获得一条记录的SVG和从数据库生成的所有数组:执行一个JavaScript函数,该函数对确切的记录执行一个AJAX进程,从而获得我需要的所有数据

我使用的Apex版本是4.2.6.00.03。问题是,用于回调的PL/SQL过程HTP.P似乎不能给出多个数组,而且我也不能同时调用所有JavaScript函数来获取每个数组

当然,我可以为一个数组创建一个JavaScript函数,然后创建一种数组链,其中下一个函数将从上一个调用,但我认为这太复杂了。另外,我不认为由几个基本数组组成一个超级数组是一个好主意,特别是因为在我的例子中,每个数组都需要有很多元素

// For example, this is how the initialization of a seat map in AnyChart looks like:

var chart = anychart.seatMap([
  {id:'1', value: 'Area 1'},
  {id:'2', value: 'Area 2'},
  {id:'3', value: 'Area 3'}
]);

// And this is the PL/SQL code of pushing back the array for it.
// HTP.P('[{id:"1",value:"Area 1},{id:"2",value:"Area 2},{id:"3",value:"Area 3}]');

此时,我使用了我的问题的愚蠢解决方案:我有单独的JavaScript函数和AJAX回调,用于获取每个数组,以便在AnyChart的帮助下绘制地图。我不反对使用两个单独的函数来获取SVG和所有数组的解决方案,但我希望有一个相对简单的解决方案来解决我的问题。

通过几个函数获取不同类型的数据对象是这种情况下的最佳实践。它允许动态更改数据对象。我的意思是获取另一张地图并保持数据不变,否则。因此,您提到的所有选项都可以使用,但在不同的函数调用中获取map/data/meta等是这种情况下的最佳方法。

谢谢您的回答。如果你推荐这种方法,我将尝试遵循它。