See http://apex.oracle.com/pls/apex/f?p=24317:84
The Edit link is set to open up an non-related page in a new tab/window. It has class="edit" and a dynamic action with scope=Live set to fire on click of a.edit with 3 TRUE actions
1. Execute Javascript code with
var l_tr=$x_UpTill(this.triggeringElement,'TR');
if (gCurrentRow) $x_RowHighlightOff(gCurrentRow);
$x_RowHighlight(l_tr,'pink');
2. Refresh report
3. Cancel event
The timestamp column is just to verify whether the report refreshed.
#1 highlights the row just fine but refreshing the report gets rid of the highligting. Noticing that the last row highlighted is stored in a global variable gCurrentRow, I thought if I add another TRUE action after the Refresh and before the Cancel to re-highlight it using the following
if (gCurrentRow) $x_RowHighlight($x_UpTill(gCurrentRow,'TR'),'pink);
that should take care of it. But, to my surprise, adding this broke the dynamic action completely. It ignores all the actions and proceeds to open the link's original target!
The example is a little contrived but the intent is to re-highlight a report row after it is refreshed.
What am I missing? Is this a bug in the Apex DA framework?
Thanks