使用ajax读取数据列表,,class为“item”,用$(“.item”).click(function(){ //do selting}),后面通过ajax加载进来的列表中的item按钮,点击事件会失效。
解决方法:
最简单的方法就是直接在标签中写οnclick=””,但是这样写其实是有点low的,最好的方式还是通过给类名绑定一个click事件。
$("#itema").click(function(){
$("#ul").append('
xxxx'); //动态向ul的末尾追加一个新元素
});
click点击事件失效的解决方法一:使用live
live()函数会给被选的元素绑定上一个或者多个事件处理程序,并且规定当这些事件发生时运行的函数。
通过live()函数适用于匹配选择器的当前及未来的元素。比如,通过脚本动态创建的元素。
实现如下:
$('.item').live('click', function(){
alert('OK');
});
方法二:使用on
可以通过on方法绑定事件,可以绑定到它的父级或者body中,实现如下:
$("#item").on('click','.colabc',function(){
alert('OK')
});
或者:
$("body").on('click','.colabc',function(){
alert('OK')
});