Select svelte 中的元素占位符?
Select element placeholder in svelte?
我正在尝试为 select 元素添加一个占位符,当我为第一个选项添加 selected
属性时,我看到的只是一个空的 space .
<select>
{#if placeholder}
<option value="" disabled selected>{placeholder}</option>
{/if}
{#each options as option}
<option value={option.value}>
{option.label || option.text}
</option>
{/each}
</select>
占位符图片
select 初始值与占位符的空字符串不同,这就是默认情况下不 selected 的原因。
确保将 select 值绑定到与初始化时的占位符匹配的变量,如下所示:
<script>
let placeholder = 'hello world';
let options = [{
label: "Option 1",
value: "option1"
}, {
label: "Option 2",
value: "option2"
}, {
label: "Option 3",
value: "option3"
}];
let selectedValue = "";
</script>
<select bind:value={selectedValue}>
{#if placeholder}
<option value="" disabled selected>{placeholder}</option>
{/if}
{#each options as option}
<option value={option.value}>
{option.label || option.text}
</option>
{/each}
</select>
工作 REPL:https://svelte.dev/repl/e1c7d9b804414f2d888b96b3e812a5c7?version=3.43.0
我正在尝试为 select 元素添加一个占位符,当我为第一个选项添加 selected
属性时,我看到的只是一个空的 space .
<select>
{#if placeholder}
<option value="" disabled selected>{placeholder}</option>
{/if}
{#each options as option}
<option value={option.value}>
{option.label || option.text}
</option>
{/each}
</select>
占位符图片
select 初始值与占位符的空字符串不同,这就是默认情况下不 selected 的原因。 确保将 select 值绑定到与初始化时的占位符匹配的变量,如下所示:
<script>
let placeholder = 'hello world';
let options = [{
label: "Option 1",
value: "option1"
}, {
label: "Option 2",
value: "option2"
}, {
label: "Option 3",
value: "option3"
}];
let selectedValue = "";
</script>
<select bind:value={selectedValue}>
{#if placeholder}
<option value="" disabled selected>{placeholder}</option>
{/if}
{#each options as option}
<option value={option.value}>
{option.label || option.text}
</option>
{/each}
</select>
工作 REPL:https://svelte.dev/repl/e1c7d9b804414f2d888b96b3e812a5c7?version=3.43.0