我的脚本返回数据(ul列表),但JQuery不能处理新插入的数据。
JQuery的
$(".tablecategoryname").on('click', function(){
var $a = $(this).closest('li').attr('id');
var $c = $(this).closest('li');
$.ajax({
type: "POST",
url: "functions.php",
data: {subcategory:$a},
cache: false,
success: function(data)
{
$(data).hide().insertAfter($c).slideDown(400);
}
});
});
为什么jQuery不能使用tablecategoryname类的新项?
答案 0 :(得分:7)
您需要具有动态元素的委托事件处理程序:
$(document).on('click', '.tablecategoryname', function(){
var $c = $(this).closest('li'),
$a = $c.attr('id');
$.ajax({
type: "POST",
url: "functions.php",
data: {subcategory : $a},
cache: false,
success: function(data) {
$(data).hide().insertAfter($c).slideDown(400);
}
});
});
用最近的非动态父级替换文档!