您好,其他开发人员。 我正在使用Oracle APEX。
我已经找到了一个非常漂亮的有关动画的JavaScript库,我想使用它来使我的应用程序更漂亮,并向用户展示路径以便在数据库中进行一些配置。 我发现的库称为JIT(https://philogb.github.io/jit/demos.html),我想使用以下实例:https://philogb.github.io/jit/static/v20/Jit/Examples/Spacetree/example1.html。 在APEX中实现动画后,我想添加一些动态动作。例如,每次单击一个节点时,将显示动画下方的另一个区域,而其他子区域则被隐藏。
直到现在,我已经在应用程序的共享组件中上载了JIT库和Javascript代码,其中包含事件和有关动画树的功能。我还设法通过HTML代码在Oracle APEX页面中显示了动画。每当单击一个节点时,我都捕获了发生的事件。我还在一个Region上创建了一个动态动作,通过这个动态动作,我想展示这个Region。每次单击一个不同的节点时,该区域就会被隐藏。我创建的动态操作具有现有属性:
*Event ='Change'
*Selection Type = JQuery Selector
*JQuery Selector = $("#P5_NAME").val('INAS006E ');
,其中P5_NAME是一个字段,我在Javacript代码中存储了被单击的节点的名称,“ INAS006E”是一个特定节点的名称。
*Action = Show
*Selection Type = Region
*Region = Test JS
,我要显示的区域的名称。
我不知道如何克服的最大问题是在Oracle APEX中传递Javascript代码node.name中的变量以触发动态操作。
这是在单击一个节点并存储node.name的地方触发的事件。
onBeforeCompute: function(node){
Log.write("loading " + node.name);
alert(node.name);
$("#P5_NAME").val(node.name);
},
总而言之,我想单击一个节点后,单击下一个节点后显示一个区域,隐藏前一个节点,然后弹出另一个区域。但是为了做到这一点,我必须将变量从Javascript代码传递到Oracle APEX
答案 0 :(得分:0)
经过大量测试和搜索,我设法解决了这个问题。 事实是答案比我预期的要简单。我要做的就是更改正在触发的函数代码。正确的功能是:
onBeforeCompute: function(node){
Log.write("loading " + node.name);
alert(node.name);
$s("P5_NAME",node.name);
},
$s("P5_NAME",node.name)
使用节点名称设置文本字段P5_NAME的值。