温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

jquery中怎么给不存在的元素添加事件

发布时间:2020-12-28 09:04:12 来源:亿速云 阅读:293 作者:小新 栏目:web开发

小编给大家分享一下jquery中怎么给不存在的元素添加事件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

jquery给不存在的元素添加事件的方法:1、【jquery1.9】版本之前,使用live方法,代码为【$("#id").live("click", function ()】;2、【jquery1.9】版本之后,使用On方法。

jquery给不存在的元素添加事件的方法:

问题 :

jquery中给元素添加事件是很简单的,如:添加一个点击事件。

$(选择器).click(function(){ 
  );

但是,项目中做了ajax分页,第一页直接加载,使用上述方法,完全没有问题。但是用在使用ajax分页,其它页的内容,都是后面通过innerHTML来进行添加,添加后的元素就没有相关的事件了。

其实,原因也很好理解就是在最开始添加事件时,其它页的元素并不存在,后面通过innerHTML添加后,标签是有了,但是对应的事件却是没有的。

那么,如何解决上面的总结呢??给不存在的元素也添加事件

解决方案:

使用live方法 : 给不存在的元素,绑定事件

$("#id").live("click", function () { 
            alert("ok"); 
     });

但是,jquery 1.9+版本后,就删除了live方法. 那用什么方法来替换live呢?

答案,就是使用on方法

$("#id").on("click",function(){ 
           alert("ok"); 
   });

但是,使用了on方法,发现还是无效  ,语法没有问题,那为啥没效,答案是不应该这样写,如果是给不存在的元素添加事件,

要使用以下的写法:

$(document).on("click",'#id', 
     function(){ 
        alert("ok"); 
    });

以上是“jquery中怎么给不存在的元素添加事件”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI