3 Replies Latest reply: Oct 27, 2014 8:02 AM by temm RSS

    Issue with APEX Dynamic Actions using apex.widget.waitPopup(); with Chorme, Safari browsers


      My Apex Setup.

      Using Oracle 12c

      Apex 4.1


      On one of my patient look up forms, the client will enter a patients record number, and it displays information about that patient in the form.

      I have fields like name, dob etc that it populates.


      I'm using a pl/sql dynamic action to get the patients information when they click a search button.  So it doesn't submit the page.

      Users are clicking the search button multiple times, not giving the server enough time to return the data.  Its causing it to go slower.


      So I'm trying to use a dynamic action using the apex.widget.waitPopup(); to put the loader icon/black overlay and remove it once the data has loaded.


      Here is the sequence of my dynamic action.

      1. Execute Javascript on apex.widget.waitPopup(); when search button is clicked

      2. Execute pl/sql function to populate text fields with data returned form tables

      3. Set loaded_status hidden item to "yes".

      4. Execute javascript  to hide the loader/overlay when loaded_status item has been "changed" to "yes":

      $("#apex_wait_popup").delay(1000).fadeOut(300, function(){$(this).remove();});

      $("#apex_wait_overlay").delay(1000).fadeOut(300, function(){$(this).remove();});


      This works in Firefox.

      It doesn't work the same in Chrome/Safari browsers.

      In these browsers it does the following.

      1. it tries to get the data first(there is a delay in the data loading)

      2. It then loads the data and shows the loader icon/overlay at the same time

      3. Then the loader icon/overlay goes away


      I need the loader icon/overlay to display first, then get the data etc etc


      I'm not sure whats causing this issue.  I have my sequences in proper order.

      Any ideas? Thoughts? Other methods of doing this?