为了账号安全,请及时绑定邮箱和手机立即绑定

jq 问题,ajax 提交事件后,触发两次内容。是为什么?

jq 问题,ajax 提交事件后,触发两次内容。是为什么?

牛魔王的故事 2019-03-12 14:16:45
上面是点击事件触发后 console.log() 显示信息.这个是 js 的所有代码,请各位有时间的朋友帮忙看看,谢谢。
查看完整描述

5 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

代码用贴图,对手机端用户不太友好哈。加之没有给HTML结构部分的代码,可能会忽略掉部分问题~

代码上没看出有明显的问题,但个人不建议each和事件(本例中是click)连用,这种需求一般用事件代理去解决吧;另外是用户触发操作(本例中是click)和ajax也不建议直接写一起,一般都会加个防抖或者标志位作为限制,以避免用户短时间内的重复触发。另外好像没看到使用场景的说明?移动端的click倒是有个300ms延时重复触发,跟你这个有点像……


查看完整回答
反对 回复 2019-03-25
?
largeQ

TA贡献2039条经验 获得超8个赞

$.each(obj, function() { obj = $(this) }) 这里虽然对结果没多大影响,但是这种写法在读程序的时候会容易混淆。function 内部建议还是声明新的局域变量 const $obj = $(this) 比较好。

从代码来看看不出来什么问题,所以

  1. 确定是 Ajax 造成的问题?用简单的 console.log(1)console.log(2) 来跟踪一下分支看看结果如何

  2. DisplayVluae() 是不是还有别的地方调用?


查看完整回答
反对 回复 2019-03-25
?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

可能还触发了默认事件


查看完整回答
反对 回复 2019-03-25
  • 5 回答
  • 0 关注
  • 907 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号