vue+element ui实现输入框手动输入以及下拉框选择

 

 

<template>
	<el-form ref="ruleForm" :model="ruleForm" label-width="80px">
		<el-form-item label="名称">
			<el-select
			v-model="ruleForm.tranCode"
			style="width: 312px;"
			ref="valSelect"
			filterable
			@blur="valSelectBlur"
			@focus="valSelectFocus"
			@change="valSelectChange"
			>
				<el-option v-for="item in options" :key="item" :label="item" :value="item">
				</el-option>
			</el-select>
			<el-input v-model="ruleForm.tranname" style="width: 280px;position: absolute;left: 0px;" @blur="valInputBlur" ref="valInput"
			 @focus="valInputFocus"></el-input>
		</el-form-item>
	</el-form>
</template>

<script>
	export default {
		data() {
			return {
				ruleForm: {
					tranname: "",
					tranCode: ''
				},
				options: [],
				optionsAll: ['黄金糕', '双皮奶', '蚵仔煎', '龙须面', '北京烤鸭', '黄金面', '奶煎鸭'],
				inputOneFocus: true,
				valSelectFocusVal: false,
				valInputFocusVal: false,
			}
		},
		watch: {
			"ruleForm.tranname": function(val) {
				var data = [];
				for (var i = 0; i < this.optionsAll.length; i++) {
					if (this.optionsAll[i].indexOf(val) >= 0 || val == 0) {
						data.push(this.optionsAll[i]);
					}
				}
				this.options = data;
				this.$refs.valSelect.focus();
			}
		},
		methods: {
			valSelectFocus() {
				this.valSelectFocusVal = true;
				this.$refs.valInput.focus();
			},
			valSelectBlur() {
				this.valSelectFocusVal = false;
			},
			valSelectChange(val) {
				this.valSelectFocusVal = false;
				this.ruleForm.tranname = val;
			},
			valInputBlur() {
				let that = this;
				that.valInputFocusVal = false;
				if (that.optionsAll.indexOf(that.ruleForm.tranname) >= 0) {
					setTimeout(() => {
						if (that.valSelectFocusVal == false && that.valInputFocusVal == false) {
							console.log("输入值在下拉项中存在");
							that.inputOneFocus = true;
						}
					}, 100)
				}else{
					setTimeout(() => {
						if (that.valSelectFocusVal == false && that.valInputFocusVal == false) {
							console.log("zzz");
							that.inputOneFocus = true;
						}
					}, 500)
				}
			},
			valInputFocus() {
				this.valInputFocusVal = true;
				this.ruleForm.tranCode = this.ruleForm.tranname;
				if(this.inputOneFocus){
					this.inputOneFocus = false;
					var data = [];
					for (var i = 0; i < this.optionsAll.length; i++) {
						if (this.optionsAll[i].indexOf(this.ruleForm.tranname) >= 0 || this.ruleForm.tranname == 0) {
							data.push(this.optionsAll[i]);
						}
					}
					this.options = data;
					setTimeout(() => {
						this.$refs.valSelect.focus();
					}, 200)
				}
			}
		}
	}
</script>

前端没路走了,改干销售中
关注 关注
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue3 - Element Plus 选择器 el-select 既可以选择下拉又可以手动输入文本功能,让 select 选择器同时拥有下拉选择输入文本(支持手动输入文本和下拉选择
王佳斌
12-02 9508
vue3,element plus,select选择器,el-select,el-select实现可下拉选择手动输入element-plus组件库中选择器怎么像输入框一样可以输入,既可以手输也可以选择,el-select可选择可以手动输入Vue3使用el-select下拉框实现输入选择,el-select可新增输入选择vue3使用element plus选择器Select既可以下拉选择也可以手动输入实现el-select可选择/可输入,怎么能让输入框又能选择又能输入文本,既有下拉功能也有输入
基于vue + element UI 的后台管理系统模板
09-12
Element UI 是一套基于 Vue.js 的开源UI组件库,由饿了么团队开发,提供了一系列完善的企业级组件,如表格、按钮、提示、下拉框、导航、弹窗等。Element UI的设计理念是“简单、实用”,它的组件样式统一且易于定制...
下拉选择输入框(基于elment-ui)
lotpyve的博客
06-27 1108
不过我在网上看,其中有一篇的文章的,我觉得还不错,不过后面我发现有点麻烦,我懒得去细细研究他的做法,在这里我也提一下,有兴趣的可以自己去研究一下,他说的是,把 el-input 组件 和 el-select 放在一起,然后通过定位来把 el-input 放在 el-select 下拉选择的那里,其中 el-input。el-select 绑定一样的值。
vue el-input 输入框下拉显示匹配数据
记录常见的问题以及解决办法
07-31 835
html: 图片需要自己根据实际情况增加 // 查询 重置 筛选 本文章只写查询 重置和更多筛选逻辑自行添加。输入条件 下面匹配查询到的数据有多少个 需要调用后端接口展示,后端查询到之后返回条数 前端展示。样式style 具体效果还是需要自己微调。
element ui 下拉框输入
weixin_48286737的博客
05-17 775
和就可以实现既可以下拉又可以手动输入
Vue element 下拉框输入选择(无bug)
热门推荐
sunshineTing2的博客
10-09 2万+
背景: 需要一个可填可选到下拉框, 当用户自定义输入时,自动添加“(其他)”后缀 效果如下: <el-select v-model="value" placeholder="请选择" clearable filterable @blur="selectBlur" @clear="selectClear" @change="selectChange"
element 下拉框select输入出下拉选项
m0_52769924的博客
04-22 519
【代码】element 下拉框select输入出下拉选项。
elementui输入下拉框
qq_68155756的博客
02-11 1465
设置elementui输入下拉框的属性
vue+element-下拉框(可选择输入
2401_86299223的博客
07-15 1473
vue+element下拉框,可输入
vue+Element中table表格实现可编辑(select下拉框
10-15
通过本文的知识点整理,可以看出在Vue+Element实现table表格可编辑功能,特别是实现select下拉框选择时,需要注意的关键点包括数据绑定方式、动态数据更新处理、以及key值的选择。掌握这些知识能够帮助开发者...
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
10-14
在本文中,我们将探讨如何在Vue.js应用程序中结合Element UI库创建一个具有下拉功能菜单的树形控件,这个功能通常用于增强用户界面的交互性。VueElement UI的组合提供了丰富的UI组件,使得开发人员能够快速构建...
vue+Element实现搜索关键字高亮功能
10-16
在介绍如何使用Vue.js结合Element UI框架实现搜索关键字高亮显示之前,我们首先要了解几个基础知识点。 Vue.js是一个用于构建用户界面的渐进式JavaScript框架。它将数据和视图分离,通过数据的双向绑定来驱动视图的...
vue+element+在输入框末端加单位下拉
最新发布
09-14
Vue.js中结合Element UI库,实现输入框(通常指`el-input`组件)后面带有一个单位选择下拉(如`el-select`),你可以按照以下步骤操作: 1. 首先,在你的项目中确保已安装了Element UI,如果没有,可以使用npm或...
vue element-ui设置可填可选下拉框
笑到世界都狼狈的博客
02-02 5549
在前端的项目开发中,好多地方都会用到下拉框,如果下拉框的内容比较少,用起来还是比较方便的,但是如果下拉框的内容比较多,有的时候需要快速的找到想要选中的内容时,有一个查询的功能还是很有必要的。element-ui有一个比较好的就是提供了可填可选的属性,这样用户可以自己输入内容查询,也可以自己手动选中,还可以自己输入下拉框没有的内容。总之,element-ui想要实现的一些功能,文档中几乎都有,遇到问题查看文档即可。只需要在select标签中加入filterable即可。
elementui 下拉选择输入
qq_42769032的博客
10-10 4045
select下拉选择输入自创条目
vue element-ui 实现输入选择下拉框
@you的博客
03-30 5807
<template> <el-select v-model="value" filterable allow-create :filter-method="filterMethod" default-first-option clearable placeholder="请选择文章标签"> <el-option v-for="item in options" ...
一步操作,轻松实现 element 下拉框搜索与输入功能
Shids_的博客
02-23 6375
一步操作,轻松实现 element 下拉框搜索与输入功能
Vue Element 带下拉菜单的输入框-可输入选择
TLJava^v^的博客
04-12 4172
背景: 需要一个可填可选的下拉框 当用户自定义输入时,自动添加“(其他)”后缀 <el-select v-model="value" placeholder="请选择" clearable filterable @blur="selectBlur" @clear="selectClear" @change="selectChang...
element-ui 下拉选择同时可输入
似水流年
07-18 3353
【代码】element-ui 下拉选择同时可输入
写文章

热门文章

  • Vue + element UI table表格实现拖拽改变行高和列宽 5203
  • vue+element ui实现输入框手动输入以及下拉框选择 4978
  • vue 使用原生input输入框结合el-tag标签实现添加多个字段完成表单搜索功能 4375
  • echarts柱状图实现select下拉切换不同的数据 3754
  • vue + element-ui 表格最后一行添加按钮-点击后表格添加一行数据 3555

最新评论

  • vue + element UI 制作问答机器人

    前端没路走了,改干销售中: 嘎嘎一嘎斯

  • Vue + element UI table表格实现拖拽改变行高和列宽

    gezihe1988: 可以存localstorage

  • Vue + element UI table表格实现拖拽改变行高和列宽

    前端小趴菜~: tblObj.rows[i].cells[0] 这个是undefined

  • vue + element UI 制作问答机器人

    weixinxiaoge: 亲测实用!优质代码!

  • Vue + element UI table表格实现拖拽改变行高和列宽

    我不是码农admin: 是的,这个怎么保存啊?

大家在看

  • Leetcode 每日一题:Diameter of Binary Tree

最新文章

  • js通过正则表达式特殊字符使用split截取字符串
  • el-cascader全选, vue+elementUI(el-cascader)实现全选功能
  • vue + element UI 模拟制作微信页面对话机器人
2023年4篇
2022年13篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值

天下网标王网站关键词优化多久见效果站在搜索引擎角度上谈网站优化横沥家具网站优化的软件金华网站优化怎么做网站优化推广咨询平台贵阳服务好的网站优化排行邯郸服务好的网站优化与推广广元网站优化建设兴化网站seo优化许昌优化网站排名价格多少网站优化成都哪里好网站自优化有实力的婚纱摄影网站优化技术网站优化业务员外贸仿牌网站优化营销网站整站优化选择金手指网站seo优化什么意思兰州网站快速优化排名网站产品优化采用云速捷出众汉口网站优化费用贵阳市百度网站优化可以优化进球数奖金的网站网站做优化优择火星赞海门网站优化有哪些松江区企业网站优化定制宁波自助优化网站哪家好曹县个性化网站关键词优化费用网站建设优化询问k火27星网站产品优化立联火星赞黔西南兴义网站优化香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化