jQuery click事件第二次不起作用

时间:2011-10-30 21:30:28

标签: jquery pagination

我正在使用jQuery来处理和处理与Codeigniter的Ajax分页。

当我第一次加载页面时,Ajax工作,但是当页面加载并且我点击其他页面链接时它不起作用(它转到本机URL)。

这是我的jQuery函数:

function pagination(){
$('.paginate').click(function(){
   $('#loading').css('display','block');
   var b  = $(this).attr('href');
   b = b.split('/');
   b = 'http://'+'/'+b[2]+'/'+b[3]+'/indexAjax/'+b[5];
   grabpagination(b);
   return false;


});
}

function grabpagination(b){
    $.ajax({
   type:'POST',
   url: b,
   cache: false,
   data: {},
   success: function (data) {
      $("#center").replaceWith("<div id='center'>"+data+"</div>");
        $('#loading').css('display','none');
        $('html, body').animate({scrollTop: '0px'}, 1100);

   },
   dataType: 'html'
});


}

和分页UL的HTML

<ul id="pagination">
    <li class="current">1</li>
    <li><a class="paginate" href="http://under.dev/home/index/2">2</a></li>
    <li><a class="paginate" href="http://under.dev/home/index/4">3</a></li>
    <li class="text"><a class="paginate" href="http://under.dev/home/index/2">التالي</a></li>
    <li class="text"><a class="paginate" href="http://under.dev/home/index/14">الأخير</a></li>
</ul>

under.dev只是一个虚拟域名。

怎么了?我正在使用Firebug进行调试,但它没有给出任何错误。


使用Live()功能解决。

1 个答案:

答案 0 :(得分:2)

如果要绑定到动态加载的数据,则需要使用live()函数绑定事件。