Oracle APEX - как отобразить всплывающую подсказку в столбце «Ссылка» отчета - PullRequest
0 голосов
/ 21 апреля 2020

У меня есть классовый c отчет с колонкой ссылок, и по щелчку он выполняет 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#.

Так что я в растерянности, как сделать и то и другое - сохранить ссылку и показать подсказку

1 Ответ

0 голосов
/ 22 апреля 2020

Я делаю это с декларативной целью ссылки, предоставляя тег заголовка в атрибутах ссылки.

APEX Link Target

Обратите внимание, что моей целью является элемент 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
...