【发布时间】:2011-12-18 09:03:39
【问题描述】:
我正在使用 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() 函数。
【问题讨论】:
-
您必须在点击回调中调用点击函数,以便重新武装回调。或者按照 flesk 的回答中的建议进行操作。
-
完成了,我刚刚读到关于 live 函数的内容,非常感谢你们。
-
也许从阅读包含示例的官方文档开始:api.jquery.com/live
-
如果问题得到解决,请发帖。它可以帮助那些没有帮助就来到页面的人!欢呼
-
请添加您的解决方案作为答案,而不是将其放在问题中。
标签: jquery pagination