最简单的AJAX分页(完善篇)

浏览:5832 发布日期:2014/09/22 分类:技术分享 关键字: ajax分页 示例
原文来自:http://www.thinkphp.cn/topic/12236.html

经测试发现原作者的这个分页代码有错误,

首先PHP部分:$this->assign('list',$list);// 赋值数据集
$this->assign('page',$show);// 赋值分页输出
 if(IS_AJAX) { $this->display('list2');    } 
$this->display('list'); // 输出模板
错误提示一: if(IS_AJAX) { $this->display('list2'); } 这段代码调用list2模板页面时, 受 $this->display('list'); 影响同时返回list 页面的HTML代码。(本人在list模板中同时有用户注册和分页代码)。

修改提示: if(IS_AJAX) {  $this->display('list2'); exit();} 即可。

JS部分:

错误提示二: $("#page a").click(function(){
    $.get($(this).attr('href'),function(html){
          $("#list").html(html);
    })
    return false; //防止跳转
 })
这样的写法在首先在JS加载完成后获取了 #page a 所在的DOM节点位置,通过 $("#list").html(html); 调用list2 模板的内容替换后,使得JS无法加载获取 #page a 标签的href。导致在调用list2模板之后JS无法调用,点击A标签是通过URL跳转的。

修改提示:$("body").delegate(".page a","click",function(){
            $.get(this.href,function(html){
                $('.data').html(html);
            });
            return false;
        });     

更改在body容器里的 page a 标签。

经测试,没有问题!
最佳答案
评论( 相关
后面还有条评论,点击查看>>