如何实现分批加载

ziluopao 发布于 2017/01/27 16:49
阅读 345
收藏 2

下面是一个ajax请求的php动态页,当然里面用了标签,但不影响它的动态功能
代码如下:
这个代码有点问题:即,ajax可以无限的加载txt数据,不知后端页面哪里有问题呢?
其中pageIndex是ajax请求中的一个参数
我试了一下,本来数据库中有30条,但是往下拉滚动条可以加载无限个!哪里出了问题呢?我的sql写的没有问题啊

<?php
$brige = $_post['pageIndex']*4;
echo $brige;
 
?>
[e:loop={"SELECT wz_ecms_news.title,wz_ecms_news.classid FROM wz_ecms_news LIMIT $brige, 4",10,24,0}]
<li>
                    <a href="<?=$bqsr['titleurl']?>" target="_blank">
                        <div class="Img"><img src="/upload/201611/11/201611111836279769.jpg"><i><img src="/upload/201611/11/201611111836234534.png" alt="<?=$bqr['title']?>"></i></div>
                        <div class="Txt">
                            <h5><b><?=$bqr['title']?></b></h5>
                            <span><?=$bqr['title']?></span>
                            <small></small>
                        </div>
                    </a>
                </li>
 
[/e:loop]

JS代码如下

var pageIndex = 2;
var stop = true;
if (allstop == true) {
    $(window).scroll(function () {
        totalheight = parseFloat($(window).height()) + parseFloat($(window).scrollTop());
        if ($(document).height()-240 <= totalheight+250) {
            if (stop == true) {
                stop = false;
                //alert("333311111111111111");
                $.post("/e/action/ListInfo/?classid=27", { "pageIndex": pageIndex, "classid": classid }, function (txt) {
                    if (txt != '') {
                      //alert("1111111111111111111");
                        $("#Loading").before(txt);
                        pageIndex++;
                        stop = true;
                    }
                    else {
                      alert("############################3");
                        $("#Loading").css('background', 'url("/images/bottom.png") no-repeat center');
                        stop = false;
                    }
 
                }, "text");
            }
 
        }
    });
}

上面有一个地方想来有问题,那就是if (txt != '')
这个条件怎么才能判断出它是空呢?php页面如何写才能促成这一条件呢

加载中
0
ziluopao
ziluopao

我有点明白了,原来是后端没有写判断$brige是否到了极限的代码,因为$brige不可能是无限递增的,当然前端不管这个,他是不断的++请求,但,哪果后端笔对它要的值已经不能再sql出txt了,此时要加一个判断,即为空值。

0
ziluopao
ziluopao

开源中国的人气太冷清了!

0
紫泉-kwer
紫泉-kwer

大过年的 都拜年去了吧

0
ziluopao
ziluopao

引用来自“紫泉-kwer”的评论

大过年的 都拜年去了吧

也不是,按说国外的人少,但是你试一下在任何论坛发个问题,最少不会冷到极点!这说明了一个问题,确实很冷。

0
g
greenspan321

我发现以上聊的跟题目完全无关

返回顶部
顶部