小编这次要给大家分享的是vue怎么实现输入框自动跳转功能,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。
<template> <div class="inputClass"> <div v-for="(item,index) in list" :key="index"> <input v-model="item.value" type="password" class="inputBorder" @keyup="jumpNext($event,index,item.value)" @keydown="replaceValue(index)"> </div> </div> </template>
JS:
jumpNext(event, index, val) { if (!/[0-9]/.test(val)) { this.list[index].value = ""; this.$message({ type: 'warning', message: '该密码仅为数字' }) return } let flag = document.getElementsByClassName("inputBorder"), currInput = flag[index], nextInput = flag[index + 1], lastInput = flag[index - 1]; if (event.keyCode != 8) { if (index < (this.list.length - 1)) { nextInput.focus(); } else { currInput.blur(); } } else { if (index != 0) { lastInput.focus(); } } if (index == 0) { this.num1 = event.key + '' } else if (index == 1) { this.num2 = event.key + '' } else if (index == 2) { this.num3 = event.key + '' } else if (index == 3) { this.num4 = event.key + '' } else if (index == 4) { this.num5 = event.key + '' } else if (index == 5) { this.num6 = event.key + '' } let str = this.num1 + this.num2 + this.num3 + this.num4 + this.num5 + this.num6 if (str.length == 6) { let params = str setUpSVIP(params).then(res => { // this.superVipVisible = false }).catch(err => { // this.superVipVisible = false this.$message({ type: 'error', message: '设置超级VIP失败' }) }) } }, /*当键盘按下的时候清空原有的数*/ replaceValue(index) { this.list[index].value = ""; }
CSS:
.inputBorder { background: #ffffff; width: 50px; font-size: 50px; height: 50px; margin-left: 0px; margin-right: 0px; text-align: center; border: 1px solid #706969; } .inputClass { margin-top: 31px; display: flex; justify-content: center; }
看完这篇关于vue怎么实现输入框自动跳转功能的文章,如果觉得文章内容写得不错的话,可以把它分享出去给更多人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。