Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue #3973: change the way Ajax spinner is appended to DOM #4019

Open
wants to merge 1 commit into
base: rel-11_0
Choose a base branch
from

Conversation

MichaelThumes
Copy link
Contributor

@MichaelThumes MichaelThumes commented Jan 7, 2025

bugfix candidate for rel-11_0 closes #3973

@MichaelThumes MichaelThumes changed the title Issue #3973: change the wax Ajax spinner is appended to DOM Issue #3973: change the way Ajax spinner is appended to DOM Jan 8, 2025
@svenoe svenoe requested a review from chzauleck January 9, 2025 15:43
@svenoe
Copy link
Contributor

svenoe commented Jan 9, 2025

@chzauleck - please see whether you approve this change. ;)
(Maybe @MichaelThumes or @stefanhaerter have an example including a picture of the problem and the change in the dom. :)

@stefanhaerter
Copy link
Contributor

At least when I managed to reproduce it, taking a screenshot was really hard because the spinner in question just showed up for one or two seconds. Maybe I can take a video and provide it.

@stefanhaerter
Copy link
Contributor

This is the behavior I observed: screen_capture.webm

@MichaelThumes
Copy link
Contributor Author

Screenshot of Ajax Spinner displayed before DF

image

@MichaelThumes
Copy link
Contributor Author

Problematic DF DOM excerpt, after selecting from the autocomplete dropdown and waiting for the DF display value to update via AJAXUpdate:

<div class="Field">
  <input type="hidden" class="FormUpdate" id="DynamicField_TicketRef" name="DynamicField_TicketRef" value="1">
  <span id="AJAXLoaderDynamicField_TicketRef" class="AJAXLoader" style="display: none;"></span>
  <input type="text" class="DynamicFieldReference DynamicFieldText Modernize ui-autocomplete-input" id="Autocomplete_DynamicField_TicketRef" title="" name="Autocomplete_DynamicField_TicketRef" value="" autocomplete="off" aria-invalid="false">
</div>

Note that the first child is hidden, the second child is the Ajax spinner and the third child is the displayed input => Ajax spinner is displayed before the Input .

DOM With proposed changes:

<div class="Field">
  <input type="hidden" class="FormUpdate" id="DynamicField_TicketRef" name="DynamicField_TicketRef" value="1">
  <input type="text" class="DynamicFieldReference DynamicFieldText Modernize ui-autocomplete-input" id="Autocomplete_DynamicField_TicketRef" title="" name="Autocomplete_DynamicField_TicketRef" value="" autocomplete="off" aria-invalid="false">
  <span id="AJAXLoaderDynamicField_TicketRef" class="AJAXLoader" style="display: none;"></span>
</div>

Note the Ajax spinner span is now the last child in the DF DOM snippet, and thus displayed after the visible DF input element.

Copy link
Contributor

@chzauleck chzauleck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

AJAX loader spinning circle is placed before the input field of a DF Customer reference
4 participants