2017-08-10 39 views
0

我有一个脚本根据查询返回的记录数动态地生成一个数据表。如果计数器运行if语句> 5

我所试图做的是运行我的jQuery脚本的第二部分如果表中的行大于5

我的脚本:

 Counter = 0; 
     $(document).ready(function() { 

      function get_data() { 
        $.getJSON("get_data_logos.php", function(json){ 
        json = json[0].data; 
        var tr ; 
        $('table').html(""); 

        for (var i = 0; i < json.length; i++) { 
         tr = $('<tr/>'); 
         tr.css("border-bottom","2px solid #FFF"); 
       tr.append("<td width='15%'><div class='clientimage'><img src='../../../../conf_images/boards/" + json[i].ClientImageName + "'></></div></td>"); 
       tr.append("<td width='33%'><div class='clientname-text'>" + json[i].ClientName + "</div></td>"); 
       tr.append("<td width='33%'><div class='roomname-text'>" + json[i].RoomName + "</div></td>"); 
       tr.append("<td width='33%'><div class='time-text'>" + json[i].RoomFromTime + " - " + json[i].RoomToTime + "</div></td>"); 
       Counter++; 
       console.log(Counter) 
       $('table').append(tr); 
        } 
       }); 
     } 
     get_data(); 
     setInterval(get_data,60000) 
     }); 

     //PART TWO 

     if(Counter > 5) { 
      var my_time; 
      $(document).ready(function() { 
      pageScroll(); 
      }); 

      function pageScroll() { 
      var objDiv = document.getElementById("contain"); 
      objDiv.scrollTop = objDiv.scrollTop + 1; 
      console.log(objDiv); 

      if (objDiv.scrollTop == (objDiv.scrollHeight - 550)) { 
      objDiv.scrollTop = 0; 
      } 
      my_time = setTimeout('pageScroll()', 50); 
      } 
     } 

提前感谢您的时间。

+0

我们很有可能不会知道如何帮助,除非你告诉我们出了什么问题! –

+0

@James Douglas嗨,我的问题是,当数据行数大于5时,pageScroll不会触发。 – DCJones

回答

1

问题是if语句只会触发一次 - 页面加载时。我会把它放到一个函数中,并在每次执行for循环时调用该函数。

Counter = 0; 
 
for (i=1; i<=10; i++) { 
 
    Counter++; 
 
    console.log('This is test number ' + Counter); 
 
    test(); 
 
} 
 
function test() { 
 
    if (Counter > 5) { 
 
    console.log('Counter is higher than 5!'); 
 
    } 
 
}

,每次如果你想让它仅仅激活首次超过5 Counter高于5.激活此功能,则只需检查值是六人。

Counter = 0; 
 
for (i=1; i<=10; i++) { 
 
    Counter++; 
 
    console.log('This is test number ' + Counter); 
 
    test(); 
 
} 
 
function test() { 
 
    if (Counter == 6) { 
 
    console.log('Counter has reached the value 6!'); 
 
    } 
 
}