Reputation: 2399
I have an strange behaviour with a select field in vue.js.
What i want: a select field with no option selected. In plain html it is no problem. Here is the jsfiddle Link: https://jsfiddle.net/odsf3awr/
<select id="test" size="5" name="test" >
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
<option value="4">Four</option>
<option value="5">Five</option>
</select>
But the same code in vue.s is preselecting the first option. jsfiddle example: https://jsfiddle.net/q10esdgw/
new Vue({
el: "#app",
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<select id="test" size="5" name="test" >
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
<option value="4">Four</option>
<option value="5">Five</option>
</select>
</div>
A solution could be to add a hidden option like this:
<option hidden disabled selected value>select an option</option>
But i would like to have it clean in vue.js
Upvotes: 1
Views: 224
Reputation: 572
Use Vue's v-model
binding so you can specify your preferences in JS:
new Vue({
el: "#app",
data: {
selected: ''
}
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<select id="test" size="5" name="test" v-model="selected">
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
<option value="4">Four</option>
<option value="5">Five</option>
</select>
</div>
Upvotes: 2