Describe the bug
I have a query which loads some data that is then used as defaults for a form.
import { form, query } from '$app/server';
import { type } from 'arktype';
export const getFormDefaults = query(() => ({
colour: 'green',
opacity: 0.5
}));
const TestFormSchema = type({
colour: '"red" | "green" | "blue"',
opacity: 'number'
});
export const testForm = form(TestFormSchema, async (data) => {
console.log('Your favourite colour is:', data.colour);
console.log('Your chosen opacity is:', data.opacity);
});
When I have a select element, whenever I attempt to change the selected value, it updates the value for the form fields, but the select element itself does not update the displayed value.
<script lang="ts">
import { getFormDefaults, testForm } from '$lib/test.remote';
const formDefaults = $derived(await getFormDefaults());
</script>
<h1>Test</h1>
<main>
<form {...testForm}>
<label for="favourite-colour-selector">Favourite Colour</label>
<select
id="favourite-colour-selector"
{...testForm.fields.colour.as('select')}
value={formDefaults.colour}
>
<option value="red">Red</option>
<option value="green">Green</option>
<option value="blue">Blue</option>
</select>
<label for="opacity-input">Opacity</label>
<input
id="opacity-input"
{...testForm.fields.opacity.as('number')}
defaultValue={formDefaults.opacity}
value={formDefaults.opacity}
/>
<p>Your favourite colour is {testForm.fields.colour.value() ?? 'N/A'}</p>
<p>Your chosen opacity is {testForm.fields.opacity.value() ?? 'N/A'}</p>
<button type="submit">Submit</button>
</form>
</main>
Reproduction
- Clone https://github.com/abdelfattahradwan/sveltekit-select-bug
- Run the
dev script. (e.g. npm run dev)
- Open
localhost:5173
- Try changing the value of the "Favourite Colour".
Logs
System Info
System:
OS: Windows 11 10.0.26200
CPU: (28) x64 Intel(R) Core(TM) i7-14700K
Memory: 35.58 GB / 63.70 GB
Binaries:
Node: 22.20.0 - C:\Program Files\nodejs\node.EXE
npm: 11.6.1 - C:\Users\Abdo\AppData\Roaming\npm\npm.CMD
bun: 1.3.0 - C:\Users\Abdo\.bun\bin\bun.EXE
Deno: 2.5.4 - C:\Program Files\deno\deno.EXE
Browsers:
Chrome: 141.0.7390.108
Edge: Chromium (140.0.3485.81)
Firefox: 144.0 - C:\Program Files\Mozilla Firefox\firefox.exe
Internet Explorer: 11.0.26100.1882
npmPackages:
@sveltejs/adapter-auto: ^7.0.0 => 7.0.0
@sveltejs/kit: ^2.47.1 => 2.47.1
@sveltejs/vite-plugin-svelte: ^6.2.1 => 6.2.1
svelte: ^5.40.2 => 5.40.2
vite: ^7.1.10 => 7.1.10
Severity
annoyance
Additional Information
No response
Describe the bug
I have a query which loads some data that is then used as defaults for a form.
When I have a
selectelement, whenever I attempt to change the selected value, it updates the value for the form fields, but theselectelement itself does not update the displayed value.Reproduction
devscript. (e.g.npm run dev)localhost:5173Logs
System Info
System: OS: Windows 11 10.0.26200 CPU: (28) x64 Intel(R) Core(TM) i7-14700K Memory: 35.58 GB / 63.70 GB Binaries: Node: 22.20.0 - C:\Program Files\nodejs\node.EXE npm: 11.6.1 - C:\Users\Abdo\AppData\Roaming\npm\npm.CMD bun: 1.3.0 - C:\Users\Abdo\.bun\bin\bun.EXE Deno: 2.5.4 - C:\Program Files\deno\deno.EXE Browsers: Chrome: 141.0.7390.108 Edge: Chromium (140.0.3485.81) Firefox: 144.0 - C:\Program Files\Mozilla Firefox\firefox.exe Internet Explorer: 11.0.26100.1882 npmPackages: @sveltejs/adapter-auto: ^7.0.0 => 7.0.0 @sveltejs/kit: ^2.47.1 => 2.47.1 @sveltejs/vite-plugin-svelte: ^6.2.1 => 6.2.1 svelte: ^5.40.2 => 5.40.2 vite: ^7.1.10 => 7.1.10Severity
annoyance
Additional Information
No response