vue3 打开页面input框自动获得焦点
1、需要聚焦的el-input输入框设置ref值: ref="getfcous"
<el-input v-model="workorder" ref="getfocus" :clearable="true" @keyup.enter.native="fill()" placeholder="请扫码或输入"/>
2、在mounted生命周期使用this.$nextTick设置自动聚焦:
mounted(){
// 页面渲染完成时自动聚焦到用户名输入框,ref="getfocus"
this.$nextTick(() => {
this.$refs.getfocus.focus();
})
},
=============================================================================================
此处表单使用element-plus框架中的表单组件。
制作简单版的登录表单。
2个输入框:用户名username,密码password;1个登录按钮。
表单中双向绑定:
data中设置对象user来获取并保存表单中输入的数据:user:{username:'',password:''}。
el-form标签: :model="user"
el-input输入框: v-model="user.username"和v-model="user.password"
加载页面时输入框自动聚焦:
1. 需要聚焦的el-input输入框设置ref值: ref="unameInput" (unameInput为自己任意命名)
2. 在mounted生命周期使用this.$nextTick设置自动聚焦:
mounted(){
// 页面渲染完成时自动聚焦到用户名输入框,ref="unameInput"
this.$nextTick(() => {
this.$refs.unameInput.focus();
})
}
回车自动聚焦下一个输入框:
1. 先在需要聚焦的el-input输入框上设置ref值:ref="pwdInput"。
2. 再用@keyup.enter设置回车自动聚焦:
回车聚焦下一个输入框:@keyup.enter="this.$refs['pwdInput'].focus()"
回车聚焦到登录按钮:@keyup.enter="login('form')"
登录按钮(此处方法login):@click="login('former')"
完整代码:
<template>
<div class="login">
<el-form
label-position="top"
label-width="100px"
:model="user"
style="max-width: 460px"
>
<el-form-item label="用户名:">
<el-input
v-model="user.username"
ref="unameInput"
@keyup.enter="this.$refs['pwdInput'].focus()"/>
</el-form-item>
<el-form-item label="密码">
<el-input type="password"
v-model="user.password"
ref="pwdInput"
@keyup.enter="login('form')"/>
</el-form-item>
<el-button type="primary"
@click="login('former')"
>
登录
</el-button>
</el-form>
</div>
</template> <script>
export default {
name:'login',
data(){
return{
user:{username:'',password:''},
userList:[
{username:'admin',password:'123'},
{username:'11',password:'11'}
]
}
},
mounted(){
// 页面渲染完成时自动聚焦到用户名输入框,ref="unameInput"
this.$nextTick(() => {
this.$refs.unameInput.focus();
})
},
methods:{
// 登录
login(){
try{
this.userList.forEach((u) => {
if(u.username === this.user.username && u.password === this.user.password){
this.$router.push('/');
throw new Error('已匹配')
}
})
}catch(e){
return
};
alert("请输入正确用户名和密码。")
}
}
}
</script> <style>
.login{
/* 表单外容器样式 */
background:rgb(245, 240, 240);
height:320px;
width:450px;
margin:100px auto;
border-radius: 20px;
/* 表单位置水平垂直居中 */
display:flex;
justify-content: center;
align-items: center;
}
</style>
https://www.bilibili.com/read/cv19694317/
vue3 打开页面input框自动获得焦点的更多相关文章
- 如何让input框自动获得焦点
项目中有个需求 一个用扫描枪输入的input框 为了避免每次都需要人为点击 需要做成当打开页面时该input框自动获取焦点 <input type="text" name= ...
- winform窗口打开后文本框的默认焦点设置
原文:http://blog.csdn.net/kongwei521/article/details/6871411 winform窗口打开后文本框的默认焦点设置,进入窗口后默认聚焦到某个文本框,两种 ...
- input固定定位后,当input框获取到焦点时,会离开手机软键盘的解决方法
前些天做页面时候遇到这样一个问题,将input框用position:fixed固定定位在最底部的时候,当Input获取焦点的时候,input框离开了手机软键盘,而不是吸附在软键盘上,效果如下图: 找了 ...
- input框自动填充内容背景颜色为黄色解决方法
谷歌浏览器input自动填充内容,背景色会是黄色,想改的话: input:-webkit-autofill { box-shadow: 0 0 0px 1000px white inset;} 这种方 ...
- 解决input框自动填充为黄色的问题
题原因:input 框会自动填充一个颜色 如图所示 解决方法 :通过动画去延迟背景颜色的显示 代码如下 input:-webkit-autofill, textarea:-webkit-auto ...
- 主动触发input框的失去焦点事件,阻止输入法跳出
今天遇到个问题,我在手机做一个选择生日的功能,但是当我点击input框时,事件选择插件和输入法都弹出来了,很丑,然后就想阻止输入法弹出来, 网上一个方法是:在input框的获取焦点事件里,主动触发失去 ...
- input 框自动检测输入是否为数字
最近做一个公众号,我这个菜鸡不得不学习很多东西,谁让老师要我一个人做这个项目呢? 好,进入正题,因为菜,所以很菜,但是百度很厉害啊,谁让我不好意思问老师,而且我也觉得问这么小的问题,太难以启齿.. 因 ...
- input输入框自动填充的问题
火狐浏览器打开页面,input可以自动填充历史输入值,现在想无论input类型是type='text'还是'password'都禁止自动填充,因为我写的页面在input='text'时先检查是否有输入 ...
- android启动activity文本框不获得焦点
在开发中,常常会碰到这种情况,打开一个activity后,第一个文本框自动获得焦点,同时会弹出软键盘输入框,这样很影响用户体验,现在来看解决方法. 我们先来看看为什么会出现上述情况,原因很简单,文本框 ...
- vue学习(十七) 使用自定义指令 使文本框获得鼠标焦点
需求:当我们进入某个页面,页面中的第一个input会自动获得焦点 光标闪烁,代表可输入 <div id="app"> //v-focus 是自定义的 <input ...
随机推荐
- react 高效高质量搭建后台系统 系列 —— 请求数据
其他章节请看: react 高效高质量搭建后台系统 系列 请求数据 后续要做登录模块(主页),需要先和后端约定JSON数据格式,将 axios 进行封装,实现本地的数据模拟 mockjs. Tip:s ...
- mybatis-config.xml 说明
mybatis-config.xml 说明 文件结构 MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息. 配置文档的顶层结构如下: configuration(配置) ...
- [WPF]ICommand最佳使用方法
public class RelayCommand:ICommand { private Predicate<object> _canExecute; private Action< ...
- AIGC 很火,想微调个自己的模型试试看?(不是卖课的)
去年,我们发布过一篇关于 DreamBooth 编程马拉松的活动通知,获得了全球社区的广泛关注和参与,中国社区的成员们也对这个活动有非常高的热情.同时我们也收到了后台留言反馈说参与活动需要使用的 Go ...
- VUE assets里的scss没有引用会被打包进代码里,本地代码和打包后的代码样式不一致解决办法
1.打包部署后,发现样式和本地运行时候代码不一致 经过排查发现 这个路径的文件被打包进去了,但是我并没有引用这个文件啊啊啊啊啊a~~~~ src\assets\webgl-assets\scss\st ...
- 【HMS Core】使用机器学习服务和搜索服务识别植物
1.介绍 总览 机器学习服务(ML Kit)为开发者提供简单易用.服务多样.技术领先的机器学习能力,助力开发者更快更好地开发各类AI应用.同时,搜索服务(Search Kit)通过端侧SDK和云侧A ...
- ICSharpCode.SharpZipLib.Zip 解析时报错System.NotSupportedException: No data is available for encoding 936
分析原因 利用ICSharpCode.SharpZipLib.Zip进行APK解析时,因为APK内编译的名称为中文,查询微软开发文档936为gb2312中文编码 微软开发文档地址https://doc ...
- 郁金香 注入DLL代码 与MFC窗口DLL文件 开源
10/10号更新 DLL注入器注入DLL卡死 问题 新增打开控制台 将阳光输出到控制台中 注入DLL代码 1 #include <stdio.h> 2 #include<Window ...
- 【KAWAKO】TVM-tflite模型编译与优化
目录 前言 准备模型 版本问题 精度问题 加载tflite模型 编译模型 在python上运行模型进行测试 加载输入数据 运行四连 优化(Autotune) 注: 前言 TVM的编译与优化主要有两种方 ...
- K3S 系列文章-RHEL7.8 离线有代理条件下安装 K3S
一 基础信息 1.1 前提 本次安装的为 k3s 1.21.7+k3s1 VM 版本为 RHEL 7.8, 7.9 或 8.2, 8.3, 8.4(K3s 官网要求) VM YUM 仓库:已配置对应版 ...