-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Open
Description
Describe the bug
Enabling async: true breaks onchange validation.
I am using top-level fieldset and disabling it to block additional submission during submission.
<script lang="ts">
import { PublicSchema } from './form';
import { submitEmail } from './form.remote';
</script>
<form
{...submitEmail.preflight(PublicSchema)}
onchange={() => submitEmail.validate({ preflightOnly: true })}
>
<fieldset disabled={!!submitEmail.pending}>
<label>
<span>Email</span>
<input {...submitEmail.fields.email.as('email')} />
</label>
<ul>
{#each submitEmail.fields.email.issues() as issue}
<li>{issue.message}</li>
{/each}
</ul>
<button>Submit</button>
</fieldset>
</form>- Enable experimental async
- Enter email and press enter to submit
- Form is successfully submitted to the server, but a validation error is shown:
# payload includes the email
/[[1,3],{"email":2},"[email protected]",{}]
Invalid key: Expected "email" but received undefined
- Refresh the page
- Enter email and click the
submitbutton - No validation error is shown
2025-12-28.220454.mp4
Reproduction
https://github.com/hyunbinseo/svelte-kit-15104
When experimental async is enabled:
- Form passes pre-flight validation and is submitted to the server
fieldset disabledis set in DOMonchangecallback is called- incorrect validation error is shown
<form
{...submitEmail.preflight(PublicSchema)}
onchange={(e) => {
// difference in fieldset disabled attribute
// only disabled in async + submit with enter
console.log(e.currentTarget);
submitEmail.validate({ preflightOnly: true });
}}
>Logs
System Info
System:
OS: Windows 11 10.0.26200
CPU: (8) x64 Intel(R) Core(TM) Ultra 7 258V
Memory: 6.52 GB / 31.48 GB
Binaries:
Node: 24.12.0 - C:\Users\hyunb\AppData\Local\fnm_multishells\2816_1766925321568\node.EXE
Yarn: 1.22.22 - C:\Users\hyunb\AppData\Local\fnm_multishells\2816_1766925321568\yarn.CMD
npm: 11.6.2 - C:\Users\hyunb\AppData\Local\fnm_multishells\2816_1766925321568\npm.CMD
pnpm: 10.26.2 - C:\Users\hyunb\AppData\Local\fnm_multishells\2816_1766925321568\pnpm.CMD
Deno: 2.4.0 - C:\Users\hyunb\.deno\bin\deno.EXE
Browsers:
Chrome: 143.0.7499.170
Edge: Chromium (140.0.3485.54)
Firefox: 146.0.1 - C:\Program Files\Mozilla Firefox\firefox.exe
Firefox Developer Edition: 147.0 - C:\Program Files\Firefox Developer Edition\firefox.exe
npmPackages:
@sveltejs/adapter-auto: ^7.0.0 => 7.0.0
@sveltejs/kit: ^2.49.1 => 2.49.2
@sveltejs/vite-plugin-svelte: ^6.2.1 => 6.2.1
svelte: ^5.45.6 => 5.46.1
vite: ^7.2.6 => 7.3.0Severity
annoyance
Additional Information
No response
Metadata
Metadata
Assignees
Labels
No labels