Javascript 循环挂起

标签 javascript jquery loops

好吧,我要退出这里了。

我正在尝试执行这段代码,但它总是挂起。我已经尝试用“while”循环修改“for”循环,但没有任何结果,还尝试使其成为一个函数并像往常一样通过 setTimeout() 执行它,一点运气也没有。我不知道还能做什么。

<script>    
$(document).ready(function() {
    for( var i=1; i<50; i++ ) {
        var theurl = 'include_test.php?appid=' + i;
        $('#index').html(i);
        $.get(theurl, function(response) {
            var checking = response.split(" - ");
            if(checking.length > 1) {
                $('#main').append(response);
                $('#index').html(checking[0]);
            } else {
                $('#index').html(response);
            }
        });
    }
}); 
</script>

我在这里错过了什么?

已添加

“挂起”是指选项卡停止响应并崩溃。此外,如果我删除 ajax 请求,代码仍然无法正常工作。

$(document).ready(function() {
    var i = 0;
    for(i=1;i<50;i++){
        $('#index').text(i);
    }
});

已添加

这是带有评论的 HTML。不知道为什么,但是当我删除它们时,代码开始工作了:/

<body>
<!-- result index -->
<div id="index"></div>
<!-- result content -->
<div id="main"></div>
</body>
</html> 

在成功删除一条评论(是的,一条评论)后,我发现了另一个……“错误”?不知道我和JS怎么了。

要查看“错误”,请参阅测试网页 HERE 循环无序地工作有什么原因吗?有什么办法让它按顺序工作吗?

最佳答案

在您的代码中添加一个失败函数并告诉我们发生了什么。 使用 jquery fail 函数的例子-

http://jsfiddle.net/hbh3a/

失败函数的文档 https://api.jquery.com/jQuery.get/

在你的代码中它会是这样的:

<script>    
$(document).ready(function() {
for( var i=1; i<50; i++ ) {
    var theurl = 'include_test.php?appid=' + i;
    $('#index').html(i);
    $.get(theurl, function(response) {
        var checking = response.split(" - ");
        if(checking.length > 1) {
            $('#main').append(response);
            $('#index').html(checking[0]);
        } else {
            $('#index').html(response);
        }
    })
    .fail(function(){//put failure code here console.log('failure');
   });
}
}); 
</script>

关于Javascript 循环挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22335671/

相关文章:

javascript - 使用 "var that = this"了解 Javascript 作用域

javascript - 如何使用连接Servlet的jQuery AJAX更改JSP页面内容?

java - 在用户输入后的任何时候停止?

猜硬币的C#程序

JavaScript 库在 Rails 中加载两次

javascript - 根据视口(viewport)高度向 body 元素添加类

javascript - 如何在追加之前清空div

javascript - 如何降低 div onclick 的高度?

javascript - 下拉列表脚本

arrays - UIcollectionview 在 Swift 3 中多次重复最后一个单元格