Fixed double click submit before next - #1370
Open
indykoning wants to merge 3 commits into
Open
Conversation
This was referenced Sep 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This fixes a bug where you have to click the next button twice in the checkout.
If you're editing an input and immediately click the "next" button it disables before you actually click. Preventing the trigger to move to the next page in the form.
It does this because every fieldset syncs it's data to Magento on change, during these network requests the "Next" button gets disabled.
If you try to click the "next" button from a changed input it'll:
v-on:mousedown.preventis the solution, why?mousedownexecutes in the same event cycle as thechangeevent does, callingpreventon that also prevents the change event from running.This doesn't work on the
clickevent sinceclickis triggered in a later event cycle.The reason why missing this change event is no problem is because the
click/submitcauses allpartial-submitfieldsets to first push their value to Magento before proceeding to the next step.Since the inputs have no
v-model.lazybutv-modelthe data is synced to vue oninput, not onchangeSo all input will get synced to Magento before proceeding.