我可以使用 vue.js 在 select 选项中设置动态工具提示吗?
Can I set a dynamic tooltip in a select option using vue.js?
我在 vue 中声明了一个数组。
sourceSelect: [
{ text: "Option 1", value: "1", title: "First tooltip" },
{ text: "Option 2", value: "2", title: "Second tooltip" },
{ text: "Option 3", value: "3", title: "Third tooltip" }
],
我的标记中有一个 select 元素:
<select class="form-group col-sm-8" v-on:change="showOptions" v-model="sourceSelected" data-toggle="tooltip" data-placement="top" data-html="true">
<option v-for="source in sourceSelect" v-bind:value="source.value" title={{source.title}} >{{source.text}}</option>
</select>
drop-down 显示选项,并显示 tooltip
,但不幸的是,不是数组中设置的 title 值 - 而是显示 {{ source.title}}。有没有办法以这种方式动态设置标题属性的值?我正在使用 vue.2.6.10
您应该像使用 value
属性一样进行绑定:
<option v-for="source in sourceSelect" v-bind:value="source.value" v-bind:title="source.title" >{{source.text}}</option>
Vue.config.devtools = false;
Vue.config.productionTip = false;
new Vue({
el: '#app',
data() {
return {
sourceSelect: [{
text: "Option 1",
value: "1",
title: "First tooltip"
},
{
text: "Option 2",
value: "2",
title: "Second tooltip"
},
{
text: "Option 3",
value: "3",
title: "Third tooltip"
}
]
}
}
})
<link type="text/css" rel="stylesheet" href="//unpkg.com/bootstrap/dist/css/bootstrap.min.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.js"></script>
<div id="app" class="container">
<select class="form-group col-sm-8" data-toggle="tooltip" data-placement="top" data-html="true">
<option v-for="source in sourceSelect" v-bind:value="source.value" :title="source.title">{{source.text}}</option>
</select>
</div>
我在 vue 中声明了一个数组。
sourceSelect: [
{ text: "Option 1", value: "1", title: "First tooltip" },
{ text: "Option 2", value: "2", title: "Second tooltip" },
{ text: "Option 3", value: "3", title: "Third tooltip" }
],
我的标记中有一个 select 元素:
<select class="form-group col-sm-8" v-on:change="showOptions" v-model="sourceSelected" data-toggle="tooltip" data-placement="top" data-html="true">
<option v-for="source in sourceSelect" v-bind:value="source.value" title={{source.title}} >{{source.text}}</option>
</select>
drop-down 显示选项,并显示 tooltip
,但不幸的是,不是数组中设置的 title 值 - 而是显示 {{ source.title}}。有没有办法以这种方式动态设置标题属性的值?我正在使用 vue.2.6.10
您应该像使用 value
属性一样进行绑定:
<option v-for="source in sourceSelect" v-bind:value="source.value" v-bind:title="source.title" >{{source.text}}</option>
Vue.config.devtools = false;
Vue.config.productionTip = false;
new Vue({
el: '#app',
data() {
return {
sourceSelect: [{
text: "Option 1",
value: "1",
title: "First tooltip"
},
{
text: "Option 2",
value: "2",
title: "Second tooltip"
},
{
text: "Option 3",
value: "3",
title: "Third tooltip"
}
]
}
}
})
<link type="text/css" rel="stylesheet" href="//unpkg.com/bootstrap/dist/css/bootstrap.min.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.js"></script>
<div id="app" class="container">
<select class="form-group col-sm-8" data-toggle="tooltip" data-placement="top" data-html="true">
<option v-for="source in sourceSelect" v-bind:value="source.value" :title="source.title">{{source.text}}</option>
</select>
</div>