Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery Ajax和setInterval Chrome问题_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript jQuery Ajax和setInterval Chrome问题

Javascript jQuery Ajax和setInterval Chrome问题,javascript,jquery,ajax,Javascript,Jquery,Ajax,我尝试使用jQuery和setInterval定期返回给定URL的值。我的代码如下所示: $("form").submit(function() { setInterval(function(){ $('#upload_progress').load('/upload_progress'); }, 5000); }); 这在Firefox中非常有效,但在chrome中,加载功能从未运行过。我也使用了$.ajax函数创建了t

我尝试使用jQuery和setInterval定期返回给定URL的值。我的代码如下所示:

    $("form").submit(function() {
        setInterval(function(){
            $('#upload_progress').load('/upload_progress');
        }, 5000);
    });
这在Firefox中非常有效,但在chrome中,加载功能从未运行过。我也使用了$.ajax函数创建了treid,并得到了相同的结果

你知道为什么这只会影响Chrome v11.0吗


任何帮助都将不胜感激

您的代码是否包装在文档就绪检查中

$(document).ready(function(){
    // your code
});

如果没有,这可能就是原因。

首先,您实际上是在提交表单。我很确定这会让浏览器处于一种状态,嘿,我在等待服务器的重定向。如果您真的想轮询和更新页面,您可能需要这样做

$("form").submit(function(e) {
  e.preventDefault();
  // ...
}

作为一个开始。在这种情况下,它对我很有效。在这里,我甚至让你做了一个相当小的工作。如果完成后需要重定向,可以向回调json或其他内容添加更多数据,以便检查{status:0-100[percent],completed:true | false},如果completed或status>=100,只需更改window.location。

js控制台中是否有错误?我正在检查长时间运行的函数的进度。如果我附加到单击事件,它会工作!为什么它在附加表单提交时不执行?听起来像是发生了什么。是不是只有Chrome在http请求期间不允许Ajax请求?我有一个类似的情况,我注意到只有Ajax函数被暂停,而不是终止,提交表单时-其他setInterval计时器在同一页面上工作正常…是的,我可以在setInterval函数之前成功执行其他函数,就像警报一样。确定-其他原因可能是权限。这是本地运行的吗?如果是这样,Chrome不允许对本地文件进行AJAX调用。在Web服务器上运行应该可以。