Oracle APEX - 将 onclick 事件放在选项卡容器的选项卡上

Oracle APEX - Put onclick event on tabs of tabs container

我有一个包含三个选项卡的选项卡容器。他们有 select 个列表和复选框,其中有 sql 个查询作为来源。用户可以 select 列表中的条目或编辑选中的框并通过单击按钮将其保存到数据库中。此按钮还会在保存后使用数据库中的当前数据重新填充 select 列表和复选框。

我的问题是:当用户 select 在 select 列表中输入一个条目或编辑一个复选框并导航到另一个选项卡而不单击“保存”按钮时,数据会保留导航回选项卡时在那里。我想确保列表和复选框中描述的内容始终是当前数据,就像它在数据库中的表中一样。

因此,我尝试像这样在 tabscontainer 的选项卡上放置一个 onclick 事件:

我没有让它工作,因为这些元素没有 ID,我不能在 APEX 中为它们设置 ID(至少我猜是这样)。有没有办法在 APEX 中做到这一点?

这是选项卡元素之一:

您可以将静态 ID 放入选项卡区域(例如 #SOME_STATIC_ID),然后 select 带有 jQuery select 或:

$("#SOME_STATIC_ID a.t-Tabs-link")

您还可以在选项卡的文本上定义点击侦听器:

$(".t-Tabs-label:contains('Tab 1')").click(function(){alert('Doing something on click of Tab 1 !!!')});

它可能不是最干净的解决方案,但它确实有效。

以防其他人遇到同样的问题:我通过在选项卡容器上放置自定义动态操作解决了这个问题:

每当用户在选项卡之间切换时都会触发,ehrefore 对我有用:-)

有关更多信息,请查看这篇文章:https://medium.com/@pierre.yotti/tabs-region-javascript-api-in-oracle-apex-37e20bc9f68f