Input框实现聚焦,并解决blur事件与enter事件冲突同时触发两次问题

文章介绍了如何在使用ElementUI框架时,由于el-input不支持v-focus,因此需要转换为原生的input标签并添加自定义指令来实现聚焦功能。通过创建全局v-focus指令并在插入时聚焦,同时处理enter键事件确保不会触发两次失去焦点。为了保持样式一致,可以添加ElementUI的类名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


<input type="text" class="el-input__inner" v-model="editParam.labelName" v-focus :placeholder="scope.row.labelName" @blur="submitEdit" @keyup.enter="$event.target.blur()" @focus="keysFlag = false">

//设置v-focus指令,如该需求很多地方用到,你可以设置全局指令
directives: {
	focus: {
		inserted: (el) => {
			el.focus()
		}
	}
}

该项目用的是element ui的框架,el-input不支持,所以要换成原生的input标签,如果你需要和他的样式一样,添加上对应的class名即可。同时按下enter事件触发的是失去焦点事件,所以不会触发两次。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值