Vue系列---【使用js给elmentui组件中的el-from-item添加点击事件】
1.问题
当选完值之后,实现点击其他地方能隐藏掉这个el-tree树。由于el-form-item这个元素本身不带失焦事件,所以我想到了,使用js给el-form-item添加点击事件,只要点击的范围不在el-form-item里面,就隐藏掉这个el-tree。
2.解决方案
2.1给el-form-item添加一个id
<el-form-item label='所属部门' id='formItem'> <el-input v-model='form.deptId' @input='showDeptTree' ></el-input> <el-tree :data="deptTree" v-if='isShowDeptTree' show-checkbox node-key="id" :default-expanded-keys="[2, 3]" :default-checked-keys="[5]" :props="defaultProps"> </el-tree> </el-form-item>
2.2 在mounted中添加监听事件
mounted() { document.addEventListener('click', (e) => { let formItem = document.getElementById("formItem"); if(formItem){
//如果点击的范围不在formItem中,则隐藏el-tree if (!formItem.contains(e.target)){ this.isShowDeptTree = false; } } }) },
愿你走出半生,归来仍是少年!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?