JQuery 里面的 click 事件会累加

本文探讨了在未采用MVVM框架的情况下,使用jQuery处理HTML元素点击事件时遇到的累加问题。作者描述了在调查问卷应用中,多次点击同一元素导致事件处理函数重复绑定,进而引起显示内容重复叠加的现象,并尝试使用unbind方法解决该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

编程一段时间了  一直用 click 事件 压根没碰到过累加问题 结果这次项目碰到了  果然小虾米~

事情是这样的  我做了一个调查问卷  问卷有十个问题  前三个不同  后面都一样  其实用 mvvm 的框架获取数据会方便  以后我在试试  大那是因为自己没有用 mvvm 的框架 (没用过), 所以是通过 jq 在 js 文件里面引入 HTML 的代码形式的  听我的 这个方法特别傻 代码很多  但是都是重复的 言归正传  在 html 中的分类中点击不容的类别 就会有相关的问题显示出来  我设置了点击当下的时候  这个出现 show()  其他的 hide()  费代码   之前完成后  我没发现什么问题 今天自己测试后时候发现如果点击了第一个  再点击别的都是正常的  但是如果再次点击已经点击过的 就会出现叠加  怎么叠加? 第二次点击的时候出现两个  加上第一次的就是三个  再再点击就再增加三个 就是 1+2+3```` 这种形式  在网上查了半天看到 unbind() 方法移除被选元素的事件处理程序。但是你们知道的 网上都是最简单的方案使用  没有详细说明的  我就不知道这个是不是要和 bind 连用  也不知道是具体放在哪里  后来尝试了半天  发现前后和里面都是可以的  根据我的程序是放在里面就生效了  放在头部没动静  放在尾巴 第一次都不执行  所以如果有谁动  非常希望能够留言告诉我怎么回事  谢谢了  代码的码放形式是这样的

第一种:

$("#div").unbind("click");

$("#div").click(function(){

alert("asdasd")

})


第二种:


$("#div").click(function(){

alert("asdasd")

});

$("#div").unbind("click")


第三种:

$("#div").click(function(){

alert("asdasd")

$("#div").unbind("click")

});


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值