ajaxjquery更新div问题

ajaxjquery更新div问题,jquery,ajax,Jquery,Ajax,我试图使用ajax来更新视图,只需在数据库中检查结果 如果找到结果,我的html div将更新为该div中的部分 如果未找到结果,则会在一段时间后进行检查 代码在没有if-else节的情况下工作 但是客户端浏览器会在某一点崩溃,浏览器被冻结(似乎如果我将缓存更改为True,它工作正常,对吗?) 我的if-else语句用于判断是否应该再次更新。逻辑是,如果我的html div得到段,我将停止更新 <script> function updateResults() {

我试图使用ajax来更新视图,只需在数据库中检查结果

如果找到结果,我的html div将更新为该div中的

部分 如果未找到结果,则会在一段时间后进行检查

代码在没有if-else节的情况下工作

但是客户端浏览器会在某一点崩溃,浏览器被冻结(似乎如果我将缓存更改为True,它工作正常,对吗?)

我的if-else语句用于判断是否应该再次更新。逻辑是,如果我的html div得到段,我将停止更新

<script>
        function updateResults() {
            $.ajax({
                type: 'GET',
                url: "/sResultsView",
                cache: true,
                success: function(html){
                    $("#resultsDiv").html(html);
                } 
            });
            window.setTimeout('updateResults()', 4000);
        }
        if($'#resultsDiv:not(:has(p))'){
            updateResults();
        }else {
            return;
        }
        }
    </script>

函数updateResults(){
$.ajax({
键入:“GET”,
url:“/sResultsView”,
是的,
成功:函数(html){
$(“#resultsDiv”).html(html);
} 
});
setTimeout('updateResults()',4000);
}
如果($'#resultsDiv:not(:has(p))){
updateResults();
}否则{
返回;
}
}
然而,它一直在告诉我语法是错误的,否则,这是我第一次编写ajax

有什么建议吗?我做得对吗?还有更好的主意吗


非常感谢您当前正在创建一个无限循环(或将要创建),请在
success
回调中安排检查,如下所示:

function updateResults() {
  $.ajax({
    type: 'GET',
    url: "/sResultsView",
    cache: true,
    success: function(html){
      $("#resultsDiv").html(html);
      if($('#resultsDiv p').length == 0) //if not found, run again in 4 seconds
        window.setTimeout(updateResults, 4000);
    } 
  });
}

为完整起见,语法错误出现在
if
语句中,如下所示:

if($('#resultsDiv:not(:has(p))')){
    ^ ------- missing --------- ^

谢谢你的解决方案。使用您的代码,我添加了updateResults();作为最后一行,它是有效的!!!非常感谢你