php - 来自浏览器的两个并行请求

标签 php jquery mysql ajax iframe

Possible Duplicate:
Parallel asynchronous Ajax requests using jQuery

我需要一个接一个地创建 2 个 ajax 请求。然后显示第一个完成的结果。问题是第二个总是等待第一个完成。我试图中止第一个,但第二个仍然等待第一个完成。有什么解决办法吗?

基本上第一个调用 php 脚本来解析一些 XML 文件并将记录插入 MySQL 表中。第二个调用 PHP 脚本,需要返回第一个导入的 20 条记录。

我尝试了两个 ajax 调用,第一个调用是从 iframe 调用的。但结果总是一样的。第二个正在等待第一个完成。我找到的唯一方法是创建子域并使用子域调用第一个子域。但这在 IE 中不起作用。

谁能解释一下如何解决这个问题吗?

也许我需要更多地描述我的问题。首先,我调用 ajax,执行时间为 cca 2 分钟,当第一个请求正在执行时,我需要有多个请求来检索第一个请求导入的记录。

最佳答案

您可以尝试使用 AJAX callback 来实现。您基本上可以输入嵌套回调并完成工作。当您获取解析的 XML 时,将调用第一个回调,第二个回调将由第一个回调调用。

更新代码示例:

var callback2 = function(data)
{
   // Callbacks complete
   // Now do some more stuff
}
var callback1 = function(data)
{
   //do something;
   $.ajax({
    url: '/echo/html/',
    success: function(data) {
        callback2(data);
    }
});   
}
$.ajax({
    url: '/echo/html/',
    success: function(data) {
        callback1(data);
    }
});

在上面的示例中,当第二个 Ajax 调用完成时,将调用回调2。

关于php - 来自浏览器的两个并行请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13026388/

相关文章:

php - if 语句中的变量未正确实现

php - Symfony2 与 CSRF token 的链接

javascript - 如何在codeigniter中显示json数据

javascript - 如何从简单的 json 制作所需的 json 树

javascript - setTimeOut 代码不适用于 jQuery

php - 虽然循环使用单选按钮为许多用户将值插入数据库

mysql - 删除/删除的 WordPress 小部件会永远丢失吗?

php - Ajax定时刷新/PHP/MySQL

php - Silverstripe 扩展 Controller 操作

jquery - 去除输入中的空格