2017-05-24 70 views

回答

0

是的,但您需要使用.on()或.live(),具体取决于您使用的是哪个版本的JQuery。

http://api.jquery.com/on/

http://api.jquery.com/live/

好了,所以尝试这裹这一个功能

function doSlideDown(){ 
    $('ul > li > input[type="checkbox"]').on("click", function() {   

    var parent = $(this).parent("li"); 
    if($(this).is(":checked") === true) { 
    // move to the top 
    $(parent).slideUp(300, function() { 
     $(parent).prependTo($(parent).parent()); 
     $(parent).slideDown(300); 
    }); 
    } else { 
     $(parent).slideUp(300, function() { 
     $(parent).appendTo($(parent).parent()); 
     $(parent).slideDown(300); 
     }); 
    } 
}); 
} 

然后添加此文档准备功能

$(document).ajaxComplete(function() { 
    doSlideDown(); 
}); 

之外这将更新DOM每次运行一些ajax和a增加一个新项目。

+0

我会在这种情况下使用.on()。 – RP12

+0

如果你发布了更多的代码,我可以写出来给你 – garek007

+0

https://jsfiddle.net/rohithdm/fvfymf0b/ 这是这样的。我知道它在这里似乎工作正常,但这是因为数据不是由数组生成的,所以我很难发布所有的后端代码,因为有这么多。基本上,更多的东西id被添加到数组中,并且它不会获得滑动式动画。 – RP12