Javascript:事件多次触发的原因

图一
点击标记处点击会出现弹出层 图二


图二

今天遇到了一个非常奇怪的现象,就是在用 `<s:iterator></s:iterator>`中构造的表格中给每一行绑定相同的事件(有AJAX请求),单独操作没有问题,但是操作多个时会出现问题,修改的数据会非常奇怪,改的位置不是自己期望的数据。

原因:

点击后出现的弹出层中的确定事件是用`live`绑定的。于是第一次触发只提交第一次的数据此时结果正确,由于每次保存成功后都会刷新页面,所以正常单次操作是不会产生问题的,如果快速操作后第二次又会给保存按钮绑定事件,这时就会在保存时触发两次事件,第一次是上一次绑定的,并且保存了上一次的ID,所以会也会修改上次的数据,产生我遇到的这种情况。

解决办法:

抛弃live方法,改用on或者bind但是官方推荐使用on,这些我就不一一赘述了,毕竟网上这些资料太多了随便查看一些on、live、bind的区别看看就好。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,188评论 19 139
  • 在线阅读 http://interview.poetries.top[http://interview.poetr...
    前端进阶之旅阅读 115,362评论 24 450
  • 冬天里 温暖是观音竹下的一支俏红豆 是案头冉冉的一缕清香 是一曲浓淡相宜的江南小调。 严寒中 温暖是脚底从破土中升...
    Vivian_dh阅读 2,490评论 0 1
  • 一个不大的房子 满是木色家具 一扇落地的窗子 挡不住清新的空气 走出去一个精致的院子 没有角落只有藤椅 有阳光时能...
    0a585c1beb31阅读 1,450评论 0 0
  • 风儿乍起 夏花凋零 所有的美都选择飘零 才有了生命中窒息的痛 经过了多少个花开花落的季节 谁能记得坠落的花瓣中 藏...
    聆听幸福668阅读 2,999评论 0 3

友情链接更多精彩内容