我通过ajax上传到页面元素,其中一些有子类“evented”。我需要在子载荷上向父类添加类。我试过这个
$(document).on('load','.evented',function(){
$('.evented').parent().closest('td').addClass('td_class');
});
但正如预期的那样它不起作用,因为td没有“加载”事件。我可以执行此代码,就像ajax响应的一部分,但在这种情况下,我将有重复的事件侦听器,我仍然需要相同的代码,用于文档准备好时存在的元素。
答案 0 :(得分:0)
我假设您使用load()方法加载内容,在这种情况下,您必须使用load方法的成功处理程序来执行此操作。
$(el).load(url, function(){
$(this).find('.evented').closest('td').addClass('td_class');
})
如果您没有使用load()方法,而是使用其他ajax方法,例如$ .ajax()/ $。get()等,那么在将内容添加到页面后,您将不得不这样做
$.ajax(...).done(function(result){
$(el).html(result).find('.evented').closest('td').addClass('td_class');
})