怎么给动态生成的元素添加点击事件

怎么给动态生成的元素添加点击事件,第1张

要看看你是怎么“动态添加”元素的。

如果你的元素是用click事件append进来的

那你的功能函数必须放在这个click事件里面。

比如:

$(".clickMeToAppendElement").click(function() {

$(".toBeAppend").append("<li><span><i class=\"icon J_classtree\">这是元素内容</i>")

$(".J_classtree").on("click",function(){

alert("终于进来了")

})

)

如果你把函数放在click事件外面,

最初加载页面的时候,$(".J_classtree")就找不到.J_classtree这个类,那段功能函数就添加不了了。

那是因为当程序第一次执行到

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

alert("I'm children")

})

这里时,$("#children")这个对象并不存在,程序就会判定为出错,那个这个事件代码就无效了。

你应该在动态生成元素的同时也动态生成事件过程,而不是先生成一个子虚乌有的事件来等着元素对号入座。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/bake/11860979.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存