Javascript 如何显示ajax';s函数会导致无限循环吗?

Javascript 如何显示ajax';s函数会导致无限循环吗?,javascript,html,ajax,flask,Javascript,Html,Ajax,Flask,这是我第一次使用Ajax,我使用无止境循环Ajax的请求从python函数获取数据。 我想在html表中显示数据,但当ajax循环时,屏幕正在加载,什么也不显示。 这是我的ajax代码 <td height="50%"style="border-width:5px; border-color:black; border-style: solid"> <p id = "demo">hihi</p&

这是我第一次使用Ajax,我使用无止境循环Ajax的请求从python函数获取数据。 我想在html表中显示数据,但当ajax循环时,屏幕正在加载,什么也不显示。 这是我的ajax代码

  <td height="50%"style="border-width:5px; border-color:black; border-style: solid">
    <p id = "demo">hihi</p>
      <script>
      while(True){
        $(document).ready(function calllog(){
          $.ajax({
            type : 'GET',
            url : '/for_log',
            dataType : 'text',
            error : function(){
              alert("failed");
            },
            success : function(data){
              document.getElementById("demo").append(data);
              }
            }
          });
        }
        });

你好

while(True){ $(文档).ready(函数calllog(){ $.ajax({ 键入:“GET”, url:“/for_log”, 数据类型:“文本”, 错误:函数(){ 警报(“失败”); }, 成功:功能(数据){ document.getElementById(“演示”).append(数据); } } }); } });

在接收和写入数据时,如何在不继续加载屏幕的情况下打印屏幕?

您应该避免
while(true)
。最好使用
setInterval

setInterval(()=>{
        $(document).ready(function calllog(){
          $.ajax({
            type : 'GET',
            url : '/for_log',
            dataType : 'text',
            error : function(){
              alert("failed");
            },
            success : function(data){
              document.getElementById("demo").append(data);
              }
            }
          });
        }
        } , 1000); // every second

这是解决此问题的另一种方法

您应该避免
而(true)
。最好使用
setInterval

setInterval(()=>{
        $(document).ready(function calllog(){
          $.ajax({
            type : 'GET',
            url : '/for_log',
            dataType : 'text',
            error : function(){
              alert("failed");
            },
            success : function(data){
              document.getElementById("demo").append(data);
              }
            }
          });
        }
        } , 1000); // every second
这是解决这个问题的另一种方法