我未来追加的元素 是 ajax拼接的 我的on是这样写的
$("td").on("click","a",function(){
alert("Aha!");
}); Salin selepas log masuk
这是 页面的标签
<td><a class="topic_a" href="#creat" name='${data.context }'>选择</a></td> Salin selepas log masuk
ajax拼接标签和上面标签一模一样的 。 但我拼接的标签点击没有效果。 为什么啊?
请确保 你用on绑定的时候 td 已经存在与dom中了.. 还有..为什么live 可以 因为live 是绑定在docuement上的..任何时候 document 都是存在的.. 你用的on 你的事件 是绑定在td上的..如果当td不存在的时候 肯定就绑定不上了 请多了解 事件代理机制.
用delegate来替换吧
未来追加的元素中包括
么? 包括 的话就不能在 $("td")上绑定事件代理。 应该在更上层的元素上绑定事件代理 比如或者的父元素 实在不行在body或者document上绑定也可以 如$("body").on("click","a",function(){
alert("Aha!");
}); Salin selepas log masuk
Salin selepas log masuk
用on bind 这种。 先拼接,然后添加到页面上,接下里在绑定事件。 js里面,一样是逐行读取的。 绑定事件写在前面,之后来添加的td,当然就不会有这个事件。 同时确保,td已经写入到页面当中。
live方法是旧版本的jquery 才有,on方法只能使用在页面上已有的标签; 想获取未来元素,只能用delegate方法了,具体写法如下:
//div是页面已经有的元素,button是js生成的未来元素!
$("div").delegate("button","click",function(){
$("p").slideToggle();
}); Salin selepas log masuk
$(document).on('click', 'td a', function() {
alert("Aha!");
}); Salin selepas log masuk
$("body").delegate("td","click",function(){
alert("ok!");
}); Salin selepas log masuk
请确保 你用on绑定的时候 td 已经存在与dom中了.. 还有..为什么live 可以 因为live 是绑定在docuement上的..任何时候 document都是存在的.. 你用的on 你的事件是绑定在td上的..如果当td不存在的时候 肯定就绑定不上了 请多了解 事件代理机制.
你这样写吧
$("body").on("click","td a.topic_a",function(){
alert("Aha!");
}); Salin selepas log masuk
未来追加的元素中包括
么? 包括 的话就不能在 $("td")上绑定事件代理。 应该在更上层的元素上绑定事件代理 比如或者的父元素 实在不行在body或者document上绑定也可以 如$("body").on("click","a",function(){
alert("Aha!");
}); Salin selepas log masuk
Salin selepas log masuk
Atas ialah kandungan terperinci jquery中live方法换on方法出现问题的解决办法详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
2023-03-15 16:54:01
2023-03-15 12:26:02
2023-03-14 18:58:01
2023-03-14 11:30:01
1970-01-01 08:00:00
2023-03-16 15:20:01
1970-01-01 08:00:00
1970-01-01 08:00:00
1970-01-01 08:00:00
1970-01-01 08:00:00
Topik-topik yang berkaitan
Lagi>