vue在element-ui的对话框的编辑控件回车时让焦点跳到下一控件
网上找的回车录入焦点前往一下控件的方式普遍比较复杂,自己不想用。学习了一个下午后似乎搞定。先帖一段代码,以后有时间解释,也请大家指教。利用下面的代码注册自己的v-enterToNext指令,并在el-form中指定使用,内部的4个控件不需要设置任何东西就能在输入回车时跳到下一控件
Vue.directive('enterToNext',{
inserted:function(el){
console.log("enterToNext...")
//let frm = el.querySelector('.el-form');
let inputs = el.querySelectorAll('input');
console.log(inputs);
//绑定回写事件
for( var i = 0 ;i < inputs.length ; i++ ){
inputs[i].setAttribute("keyFocusIndex",i);
inputs[i].addEventListener('keyup', (ev) => {
if (ev.keyCode === 13) {
let targetTo = ev.srcElement.getAttribute('keyFocusTo');
if(targetTo){
this.$refs[targetTo].$el.focus();
}else{
var attrIndex = ev.srcElement.getAttribute('keyFocusIndex');
var ctlI = parseInt(attrIndex);
if(ctlI<inputs.length-1)
inputs[ctlI+1].focus();
}
}
});
}
},
});
上面是注册自己的v-enterToNext指令的代码
下面是我测试的el-dilalog,只需在el-form中指定v-enterToNext,后面的【=”true"】其实可能省略

vue在element-ui的对话框的编辑控件回车时让焦点跳到下一控件的更多相关文章
- 关于vue.js element ui 表单验证 this.$refs[formName].validate()的问题
方法使用前需了解: 来自”和“小编的小提示: 首先打印一下this.$refs[formName],检查是否拿到了正确的需要验证的form. 其次在拿到了正确的form后,检查该form上添加 ...
- element UI Cascader 级联选择器 编辑 修改 数组 路径 问题(转载)
来源:https://segmentfault.com/a/1190000014827485 element UI的Cascader级联选择器编辑时 vue.js element-ui 2 eleme ...
- Vue框架Element UI教程-axios请求数据
Element UI手册:https://cloud.tencent.com/developer/doc/1270 中文文档:http://element-cn.eleme.io/#/zh-CN gi ...
- vue与element ui的el-checkbox的坑
一,场景 通过使用checkbox,实现如图的场景, 点击某个tag,实现选中和非选中状态. 二, 官网的例子 通过切换checked值为true或者false来实现,一个checkbox的状态切换 ...
- vue.js+element ui Table+spring boot增删改查
小白初学,不懂的还是太多了,找了好多资料才做出来的先记录一下 1.先用Spring boot创建一个包含了增删改查的项目 2.创建vue.js项目 3.安装Element UI (1)进入项目文件夹下 ...
- vue开源Element UI表单设计及代码生成器
在日常的开发工作中,表单开发是较为繁琐且重复的.本文介绍一个我自己写的,提高开发效率的小工具. 1 可视化设计器 设计器基于Element UI ,可通过点击或拖拽的方式设计基本表单, 设计器生成的代 ...
- 第五十三篇:Vue安装Element ui
好家伙,之前写的一篇过时了,用不了了,更新一波 (已新建一个vue项目) 1. 在项目目录下执行:npm i element-ui -S 2. 在main.js中写入 import ElementUI ...
- VUE -- 对 Element UI table中数据进行二次处理
时间——日期 后台经常给我们返回的是 时间戳 (例如:1535620671) 这时候我们页面展现的时候需要将时间戳转换为我们要的格式 例如 (YYYY-MM-DD HH:mm:ss) 如果是在Elem ...
- Vue.js + Element.ui 从搭建环境到打包部署
一.搭建环境 由于新的node已经集成了npm,所以直接安装node,前往node官网下载最新版本的node,根据自己的操作系统选择相应的包,按照步骤一步步走就可以,这里不做过多介绍. 安装好后可以打 ...
随机推荐
- VS2012 C# 连接MySQL数据库
原则:不安装 1.下载: https://dev.mysql.com/downloads/connector/net/6.8.html#downloads 2.解压 → 3.添加引用(一个MySql. ...
- You Only Look Once: Unified, Real-Time Object Detection
论文下载:http://arxiv.org/abs/1506.02640 代码下载:https://github.com/pjreddie/darknet Abstract 作者提出一种新的目标检测 ...
- 分布式计算课程补充笔记 part 4
▶ 并行通讯方式: map 映射 全局一到一 全局单元素计算操作 transpose 转置 一到一 单元素位移 gather 收集 多到一 元素搬运不计算 scatter 分散 一到多 元素搬运不计算 ...
- js跨域传值,兼容ie8以上
js跨域传值,兼容ie8以上 事先说明,此方法并不支持ie8,如果想要支持ie8的话,需要用这种思路(来自微软): if (window.addEventListener) { window.addE ...
- final关键字特点
一.final关键字修饰的类 无法被继承(即不能有子类) 二.final关键字修饰的方法不能被重写 三.final关键字修饰的变量成为常量(即不允许被修改) 开发中经常使用
- python中的__str__()函数
__str__()函数的作用: 不知道大家再写程序是,打印一个实例化对象时,打印的其实时一个对象的地址.而通过__str__()函数就可以帮助我们打印对象中具体的属性值,或者你想得到的东西. 因为再p ...
- BASEDIR
1)正常写python程序会有一个可执行的bin.py文件,假如这个文件需要导入my_module里面定义的模块,应该怎么设置sys.path(此时可以直接导入), 因为bin和model属于同级目录 ...
- GIT TEAMWORK
Learn GIT TEAMWORK generalizations Congratulations, you now know enough to start collaborating on Gi ...
- java导出excel模板数据
Java导出excel数据模板,这里直接贴代码开发,流程性的走下去就是步骤: String[] colName=new String[]{"期间","科目代码" ...
- yii2.0如何优化路由
比如我的路由是 http://localhost/basic/web/?r=site/index 现在想改成 http://localhost/basic/web/site/index 的形式 ...