最简单的Vue下HTML Select下拉框操作(构建、取值、默认值处理)

12 篇文章 0 订阅
8 篇文章 1 订阅
Vue配合Select使用的例子:

<option :value="value" v-for="(text, value) in list.items">{{ text }}</option>
构建列表主要是这行,通过v-for循环从字典items中取值,并创建option下拉列表。
v-model="list.selected"
v-model绑定列表默认值,通过它可以访问当前选中项目的id和value.
<button @click="test">set to 3</button></p>
一个按钮,通过外界途径修改默认值的示例。

  • 因为太简单了,就不多说什么,稍懂一点点Vue的朋友一看就明白了。
<template>
	<div>
		<select v-model="list.selected">
			<option :value="value" v-for="(text, value) in list.items">{{
				text
			}}</option>
		</select>
		<BR /><BR /> value={{ list.selected }} , text={{ list.items[list.selected] }}
		<BR /><BR />
		<button @click="list.selected = '3'">set to 3</button>
	</div>
</template>
<script>
export default {
	name: 'demo',
	data() {
		return {
			list: {
				selected: '2',
				items: {
					'1': 'Apple',
					'2': 'Banana',
					'3': 'Cherry',
				},
			},
		}
	},
	methods: {},
	mounted: function() {},
}
</script>
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Vue中,当使用v-model动态渲染select下拉框时,可能会遇到下拉框显示为空白的问题。这是因为select标签必须要有一个值才能正常显示,而默认情况下v-model绑定的变量是没有值的。因此,需要给v-model绑定的变量赋一个初始值,例如将select的初始值设置为空字符串。\[2\] 另外,还有两种解决方法可以解决这个问题。第一种方法是使用Vue的$set方法来为动态新增的属性赋值。在change事件中,可以使用this.$set来为inquire对象的selectData属性赋值,这样可以实现select下拉框选择后赋值成功并显示选中的值。\[3\] 第二种方法是使用forceUpdate方法来强制刷新render函数。如果下拉框的数据是从其他接口获取的,并且数据层次较深,render函数可能无法自动更新,需要手动强制刷新。在select的change事件中,可以加上this.$forceUpdate()来强制刷新,这样就可以解决选中值不显示的问题。需要注意的是,forceUpdate只会影响实例本身和插入插槽的子组件,而不是所有子组件。\[3\] 综上所述,解决Vue隐藏select下拉框的问题可以通过给v-model绑定的变量赋初始值,使用$set方法为动态新增的属性赋值,或者使用forceUpdate方法强制刷新render函数。 #### 引用[.reference_title] - *1* *2* [(详解)Vue设置select下拉框的默认选项(解决select空白的bug)](https://blog.csdn.net/Andye11/article/details/126933085)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [vue中el-select下拉框 选择后赋值成功 但是下拉选框上不显示选中的值的解决办法](https://blog.csdn.net/weixin_44900104/article/details/126348729)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

rockage

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值