大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这期内容当中小编将会给大家带来有关怎么在vue中实现一个回车键登录功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
成都创新互联专注于企业成都营销网站建设、网站重做改版、贡觉网站定制设计、自适应品牌网站建设、H5开发、成都商城网站开发、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为贡觉等各大城市提供网站开发制作服务。
created() { let that = this; document.onkeypress = function(e) { var keycode = document.all ? event.keyCode : e.which; if (keycode == 13) { that.login();// 登录方法名 return false; } }; }
以上的代码,在这几天测试发现有一个问题,在登录进系统之后,从首页切换到其他界面,点击回车,会导致界面调整到首页!
要实现:
只在Login界面点击回车才执行onkeypress方法,其他的点回车均不触发(还不明白为什么在其他界面回车会执行Login界面的created-_-|| )
思路:
在Login.vue最外层绑定id,再绑定键盘事件。
$(“#loginDiv”).bind("keypress",toLogin);
测试发现监听不到按键事件,因为div元素没法获取焦点,但只要为div元素加上tabIndex属性就能获取焦点
以上方法虽然也能触发keypress,但还有点瑕疵~ 就是打开登录页时,需要鼠标点一下界面,才能触发keypress!!!
又一思路:界面中需要有一个聚焦,在回车时才好执行keypress。故在界面中加input文本框,让不管从哪里打开或跳到Login.vue都聚焦文本框
所以自定义指令:
directives: { focus: { // 指令的定义 inserted: function (el) { el.focus() } } },
自定义指令及inserted用法截图自vue官网文档如下:
知识点补充:
vue项目里登录界面实现回车登录
方法一:
在vue的created钩子函数中写
//登录添加键盘事件,注意,不能直接在焦点事件上添加回车 // let that = this; // document.onkeydown = function (e) { // e = window.event || e; // if(that.$route.path=='/login'&&(e.code=='Enter'||e.code=='Num Enter')){//验证在登录界面和按得键是回车键enter // that.handleSubmit2('ruleForm2');//登录函数 (handleSubmit2('ruleForm2')-登录按钮的点击事件) // } // }
注意:只对主键盘的Enter管用
方法二:
在vue的created钩子函数中写
var _self = this; document.onkeydown = function(e){ var key = window.event.keyCode; if(key == 13 || key == 100){ _self.handleSubmit2('ruleForm2'); } }
上述就是小编为大家分享的怎么在vue中实现一个回车键登录功能了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。