项目场景:

表单校验,包含多个输入框,需要对每个输入框进行失焦校验,校验不通过需要进行弹框提示用户。


问题描述

点击A输入框->再点击B输入框->触发A失焦弹窗->点击弹窗确认->触发B失焦弹窗->点击弹窗确认->触发B失焦弹窗->点击弹窗确认->触发B失焦弹窗…


原因分析:

A输入框满足失焦校验,点击B输入框,此时触发A输入框失焦校验弹出弹框,点击A弹窗又触发B失焦,B弹框校验,但此时B输入框并未正确失焦,只是因为点击了上层弹框导致短暂失焦,这样B失焦校验就会循环触发。


解决方案:

利用事件的relatedTarget属性判断
relatedTarget 事件属性返回与事件的目标节点相关的节点。
正常失焦事件 该属性为null 但如果失焦的同时点击了其他按钮/输入框 该属性为对应的按钮和输入框的节点

validateBlur(e) {// 避免input框blur事件循环调用if (e.relatedTarget && e.relatedTarget.className !== 'my-input') {return}/.. 校验逻辑 ../
}

多个输入框失焦事件触发异常问题解决相关推荐

  1. 失焦事件触发_js中表单的聚焦失焦事件

    焦点事件: 不是所有元素都有焦点事件,只有可交互性的元素才有,比如表单元素,a标签.页面中只能有一个元素有焦点,一个聚焦,另一个就失焦,默认在document. 例子结构如下: js操作如下: 1.f ...

  2. 失焦事件触发_jquery 触发/失去焦点事件例子详解

    触发焦点: $("Element").focus() 触发每一个匹配元素获得焦点事件. $("Element").focus(function) 事件会在获得焦 ...

  3. JS事件 失焦事件(onblur)onblur事件与onfocus是相对事件,当光标离开当前获得聚焦对象的时候,触发onblur事件,同时执行被调用的程序。...

    失焦事件(onblur) onblur事件与onfocus是相对事件,当光标离开当前获得聚焦对象的时候,触发onblur事件,同时执行被调用的程序. 如下代码, 网页中有用户和密码两个文本框.当前光标 ...

  4. input输入中文时,拼音在输入框内会触发input事件的问题

    问题描述: 监听文本输入框的input事件,在拼写汉字(输入法)但汉字并未实际填充到文本框中(选词)时会触发input事件,如图: 需求:选词完成后触发input事件,只触发一次. 解决办法: 通过查 ...

  5. javascript 模拟按键事件 触发输入框oninput事件

    记录下解决textarea 在js赋值后不生效的问题 我要实现的是网页聊天框模拟输入一段话,然后js触发点击发送事件 然而在使用js直接赋值之后,textarea并没有收到值 document.que ...

  6. Vue+Element ui input输入框,扫码枪触发 enter事件,多次快速扫描会出现字符丢失的问题(已解决)

    input输入框,扫码枪触发 enter事件,多次快速扫描 第二次字符会丢失 修改之前代码: 在接口返回过来值之后,将input框值清空掉 这样写用键盘enter键快速触发多次,也不会有任何问题,但是 ...

  7. 【JQuery】两种失焦事件的使用

    可以通过给jsp / html页面的input输入框绑定失去焦点事件,来判断用户是否已结束输入. 在JQuery框架中,blur()失焦事件 / change()内容改变事件都可以作为失焦事件来使用. ...

  8. js blur失焦事件与click点击事件冲突

    场景:输入框绑定blur失焦事件,focus后点击按钮,触发了输入框的blur事件,但是按钮点击事件没有触发. 原因:blur失焦事件的优先级比click点击事件高. 解决方法: 1.都触发 blur ...

  9. python事件触发机制_Python3-事件驱动、IO模型和触发方式

    事件驱动模型 传统编程线性模型 开始 ----> 代码块A ---->代码块B ---->代码块C ...... 结束 每个代码块都有各自实现的功能,按照条件语句顺序判断执行,每一次 ...

最新文章

  1. 慕课网基于ElasticSearch的找房网实战开发企业级房屋搜索网项目学习心得(一)
  2. App Class Loader
  3. 光猫的分类及应用范围有哪些?
  4. python函数sn_Python plist.SndRcvList方法代码示例
  5. 新年发财专属红包封面,高端大气上档次!
  6. python爬取地图地址_python爬取了高德地图一些地点的数据,爬出来数据大致情况如下:...
  7. 二叉树遍历——递归算法
  8. 2017第34届广州国际特许连锁加盟展览会会刊(参展商名录)
  9. Hadoop 核心原理(贼全面)
  10. PS新手,常用的几种技巧干货,值得收藏!
  11. Broker启动历史数据加载
  12. 基于阿里云LinkWAN实现设备上云(1) LinkWAN平台简析
  13. 别傻干了,刚离职的同事分享了他常用的19个私活平台!
  14. TS OLT Internet业务和组播业务(multicast)配置指导
  15. 秘钥认证登录CentOS 7
  16. 为什么我总是更新不了头像啊
  17. R7 5800H 3060 ubuntu20 配置全纪录(一)主要包括:N卡驱动、网卡驱动、virtualenv、CUDA and pytorch
  18. 学习KNN算法重点目标
  19. 《枪炮、病菌与钢铁》之一
  20. RS232RS485基本简介

热门文章

  1. 汇编指令lea 和 mov 区别
  2. xbox和微软是一个服务器吗,一个账号搞定:港服Xbox和Win10商店正式支持支付宝...
  3. 英文版-每一天-day by day and with each passing momment
  4. 移动开发,哪个平台更胜一筹?
  5. 【SDCC讲师专访】专访有赞洪斌:“精细化”平台架构带来数据价值最大化
  6. 咸鱼ZTMR实例—巡线入门
  7. Ariduino入门笔记——11. Arduino 默认函数(USB设备控制)
  8. 临床医学计算机思维的应用情况,计算机模拟病例系统在医学生临床思维培养中应用价值分析.doc...
  9. 电脑与云服务器传输文件,电脑与云服务器传输文件
  10. 优信拍集团php面试题_【优信拍PHP高级工程师面试】不错,主管眼光很犀利,而且不扯皮。-看准网...