javascript全局变量不更新和ajax发出相同的请求

时间:2016-07-18 01:41:51

标签: javascript jquery ajax

 <script type="text/javascript">
    // i need app Id and image name from json
    var waypoint;
    var count = 0;
    var number = 0;
    var url = '{{url("/app/next/")}}/' + number;


     $(document).ready(function() {
        loadMore();       

        $(window).scroll(function() {
                $(window).scrollTop() + $(window).height() >     
$(document).height() - 450 && 0 == count && (count = 1,loadMore())
            })
     });

     function loadMore(){
        $.getJSON(url, function(jd) {

            jd.forEach(myFunction);

            function myFunction(item, index) {

                var app = '<a href="{{url('/app/')}}/'+item.id+'"/>';

              $('#content').append(app);
               number = item.id;
              if(item.id == 1){
                count = 1;
              }
              else{
              count = 0;
              }
                 }
                return true;
           });
     }

    </script>

这里我循环使用jquery在数据库中将行从最后一行扔到第一行。 我的PHP脚本被设置为给出行中的下一个最后一个元素,如果我手动发出请求,则工作正常。 http://theviralappcreate.dev/app/next/4将返回第3个元素。

每当我扯下它时,它会在http://theviralappcreate.dev/app/next/0发出请求并继续发出相同的请求,但是我正在通过number = item.id更新数字变量;

1 个答案:

答案 0 :(得分:1)

移动

var url = '{{url("/app/next/")}}/' + number;

内部loadmore()

function loadMore(){
        var url = '{{url("/app/next/")}}/' + number;
        $.getJSON(url, function(jd) {
        ...

然后作为数字增量,每个请求将使用更新的URL值