0

我有一个带有链接列的经典报告,单击它会执行 javascript 以打开一个弹出窗口。我需要在链接中添加工具提示。

我知道一种方法 - 添加<span title="My tooltip text">#COLUMN_NAME#</span>列格式,但这仅适用于Plain Text列。我不能只显示我的列,因为它必须是一个链接,因为它的目标设置为 URL 并调用 javascript 代码。

如果我将列从链接更改为Plain Text因为它需要调用 javascript 并将所有 javascript 代码塞入<a href>其中将是一个问题,因为这样我无法将列值传递给 javascript:

SELECT '<a href="javascript:$s("P1_ITEM1",#FIELD1#);$("#POPUP_REGION").popup("open");">' || MyFunction(t1.id) || '</a>' my_field, t1.field1, t1.field2
FROM Table1 t1

上面的代码没有将 FIELD1 列的值传递给 javascript,而是将其作为字符串放入#FIELD1#

所以我不知道如何做到这两点 - 保留链接并显示工具提示

4

1 回答 1

0

我通过在链接属性中提供标题标签来使用声明性链接目标执行此操作。

APEX 链接目标

请注意,我的目标是项目 P310_ACTION_ID,它使用列别名 ITEM_ID 中的列值设置它。

该项目上会有一个 DA,然后调用一个弹出窗口,或者任何你需要的。

如果您在 SQL 中执行此操作,则需要构建相同的字符串,更像是

<a title="blah" href="javascript:$s(''P1_ITEM1'','''||t.field1||''');">'||t.field1||'</a>'

或者,如果您不喜欢与伍德斯托克风格的引语作斗争,您可以使用以下变体使事情变得更容易

  apex_string.format(
     q'{<a title="blah" href=javascript:$s('%s','%s')}'
     ,'P1_ITEM1'
     ,t.field1
于 2020-04-22T01:10:41.700 回答