给按钮绑定的click事件无效

Posted lveyhang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了给按钮绑定的click事件无效相关的知识,希望对你有一定的参考价值。

1. 原因分析:按钮是发送 Ajax 请求,成功请求到数据后,使用 JQuery 动态生成的。Ajax 请求是异步刷新机制,不会等上面的代码执行完。因此给这种类型的按钮绑定点击事件时,按钮还没有被创建出,那么,click事件自然不会绑定到按钮上。

2. 解决办法:

    ① 在按钮创建的时候就绑定事件。

    ② 使用 JQuery 的 .live() 方法:给所有匹配的元素附加一个事件处理函数,即使这个元素是以后再添加进来的也有效。但是在 JQuery 1.7开始的版本中被删除了,应该使用 .on() 来添加事件处理。使用旧版本的用户,应该优先使用 .delegate() 来替代 .live()。

    ③ 使用 JQuery 1.7 中新添加的 .on() 添加事件处理。

3. .on() 具体使用可参考官方文档:https://www.runoob.com/manual/jquery/

以上是关于给按钮绑定的click事件无效的主要内容,如果未能解决你的问题,请参考以下文章

在微信公众号开发(微站)过程中用Zepto/jquery的on/live绑定的click事件点击无效(不能执行)

jquery中click事件的累加绑定,点击一次,执行多次

如何为django中的按钮绑定事件

对事件委托绑定click的事件的解绑

给动态元素绑定事件

on事件绑定阻止冒泡的问题