当前位置: 首页 > news >正文

Vue实现版本号输入、删除时光标自动移动到上、下一个输入框前端demo

前言

首先声明,我平时的工作主要是后端JAVA开发,该demo为前端练习,记录一下劳动成果,希望对大家有所帮助,如果有写的不妥的地方,欢迎大家指正,一起学习、共同进步。

背景

手机验证码、银行卡输入密码等很多场景,在我们输入或者删除的时候,光标都会自动的定位到我们当前输入的输入框,模拟这一场景,我决定简单实现一下输入、删除版本号时,光标自动移动、定位。

假设:系统版本号分为主版本号、次版本号、修订号、构建号,一共这四个定义,同时每个字段最多只允许输入两位。最大的版本号则为99.99.99.99。

代码如下:

这四个版本号我决定使用四个输入框来模拟:

<template><el-form ref="form" :model="params" label-width="93px"><el-form-item label="升级版本号" prop="version"><el-input v-model="params.major" @keyup.native="moveFocus($event,null,'minor')" style="width: 60px;margin-right: 5px;" ref="major" type="text" maxlength="2"/><el-input v-model="params.minor" @keyup.native="moveFocus($event,'major','patch')" style="width: 60px;margin-right: 5px;" ref="minor" type="text" maxlength="2"/><el-input v-model="params.patch" @keyup.native="moveFocus($event,'minor','build')" style="width: 60px;margin-right: 5px;" ref="patch" type="text" maxlength="2"/><el-input v-model="params.build" @keyup.native="moveFocus($event,'patch',null)" style="width: 60px;margin-right: 5px;" ref="build" type="text" maxlength="2" /></el-form-item></el-form>
</template>

 给这四个版本号初始化:

   data() {return {params: {version: undefined,//主版本号major: undefined,//次版本号minor: undefined,//修订号patch: undefined,//构建号build: undefined,}}}

使用@keyup事件来调用moveFocus方法,完成光标定位。(要使用@keyup.native,否则键盘事件不生效),在methods中添加moveFocus方法。

在这里我是通过判断当前输入的长度来触发光标移动。

methods: {moveFocus(event,prevInput,nextInput) {if (event.key === 'Backspace' && event.target.value.length === 0 && prevInput) {this.$refs[prevInput].focus();} else if (event.key !== 'Backspace' && event.target.value.length >= 2 && nextInput) {this.$refs[nextInput].focus();}}

读到这里别忘记点赞、收藏、关注哦,一键三连!!!

http://www.lryc.cn/news/274333.html

相关文章:

  • 【胖虎的逆向之路】Android自制Https证书实现双向认证
  • 解析千兆多模光模块SFP-GE-SX
  • Go语言基础简单了解
  • kafka重平衡经验总结
  • Py之jupyter_client:jupyter_client的简介、安装、使用方法之详细攻略
  • 61.网游逆向分析与插件开发-游戏增加自动化助手接口-游戏红字公告功能的逆向分析
  • neo4j查询语言Cypher详解(五)--apoc
  • odoo17 | 视图操作按钮
  • KBDPL.DLL文件丢失,软件游戏无法启动,修复方法
  • Webpack5 常用优化总结
  • Oracle-视图与索引
  • 在Linux写自己的第一个程序“hello Linux”
  • 【AI视野·今日Robot 机器人论文速览 第六十八期】Tue, 2 Jan 2024
  • 图像识别快速实现
  • 一文详解动态 Schema
  • Web网页开发-总结笔记2
  • C#的StringBuilder方法
  • 美格智能5G RedCap模组SRM813Q通过广东联通5G创新实验室测试认证
  • MVCC 并发控制原理-源码解析(非常详细)
  • 通过国家网络风险管理方法提供安全的网络环境
  • input中typedate的属性都有那些
  • 将PPT4页并排成1页
  • iPhone 恢复出厂设置后如何恢复数据
  • 欧洲最好的AI大模型:Mistral 7B!(开源、全面超越Llama 2)
  • Python | 诞生、解析器的分类版本及安装
  • vim学习记录
  • bat脚本:将ini文件两行值转json格式
  • scratch绘制小正方形 2023年12月中国电子学会图形化编程 少儿编程 scratch编程等级考试四级真题和答案解析
  • 【产品应用】一体化伺服电机在管道检测机器人中的应用
  • Django在urls.py利用函数path()配置路由时传递参数给调用的视图函数的方法