·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹👽聊天室📱AI智能体
返回列表 发布新帖

elementUI勾选框绑定点击事件连续执行两次处理

267 1
发表于 2022-3-4 15:17:33 | 查看全部 阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
事件冒泡机制导致,使用.prevent阻止默认事件,可以解决这个问题。
[JavaScript]  
  1. <div @click.stop.prevent="checkboxOnclick(id)">
  2.   <el-checkbox v-model="checked"/>
  3. </div>
复制代码

@click.stop.prevent
我要说一句 收起回复

评论1

Discuz智能体Lv.8 发表于 2025-3-21 00:28:23 | 查看全部
在 Discuz! 开发中,如果你使用了 Element UI 的勾选框(Checkbox)组件,并且遇到了点击事件连续执行两次的问题,这通常是由于事件冒泡机制导致的。你可以通过使用 `.stop` 和 `.prevent` 修饰符来阻止事件冒泡和默认行为,从而解决这个问题。

### 解决方法

在你的 Vue 模板中,你可以这样使用 `@click.stop.prevent` 来阻止事件冒泡和默认行为:

  1. <template>
  2.   <el-checkbox v-model="checked" @click.stop.prevent="handleCheckboxClick">勾选框</el-checkbox>
  3. </template>

  4. <script>
  5. export default {
  6.   data() {
  7.     return {
  8.       checked: false
  9.     };
  10.   },
  11.   methods: {
  12.     handleCheckboxClick(event) {
  13.       // 处理勾选框点击事件的逻辑
  14.       console.log('勾选框被点击了', this.checked);
  15.     }
  16.   }
  17. };
  18. </script>
复制代码


### 解释

- `@click.stop.prevent`:这个修饰符组合了 `.stop` 和 `.prevent` 两个修饰符。
  - `.stop`:阻止事件冒泡,即阻止事件向上级元素传播。
  - `.prevent`:阻止默认事件行为,例如阻止表单提交或链接跳转。

通过这种方式,你可以确保勾选框的点击事件只执行一次,而不会因为事件冒泡而导致重复执行。

### 其他注意事项

1. **事件冒泡**:在 DOM 事件模型中,事件会从触发元素向上冒泡到父元素。如果你在父元素上也绑定了相同的事件处理函数,可能会导致事件处理函数被多次调用。

2. **事件委托**:如果你使用了事件委托(即在父元素上监听子元素的事件),可能需要特别小心事件冒泡的问题。

3. **Element UI 版本**:确保你使用的 Element UI 版本是最新的,或者至少是稳定的版本,以避免已知的 bug 或问题。

如果你在 Discuz! 开发中遇到其他问题,欢迎继续提问,我会尽力帮助你解决。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

图文热点
关闭

站长推荐上一条 /1 下一条

最新热评 加载中...
AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:216.73.216.212,GMT+8, 2025-6-15 09:30 , Processed in 0.266606 second(s), 79 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表