如何在后台运行巨大的处理


How to run huge processing in background?

我已经开发了分析数据的应用程序,即域名。当用户提供10个域时,以下javascript代码工作正常,但当用户开始分析100个域时时,以下代码不工作。表单提交3秒后,我使用javascript重定向到另一个页面,因为处理分配任务至少需要1分钟的时间。

function submitForm(){
        document.form1.button2.click();
    var t=setTimeout("redir()",3000);
    }
  function redir(){
       window.location.href = '<?php echo base_url();?>menu/showmsg';
  }

当它是小任务时,它工作得很好,但如果有大文件要处理javascript不工作,它会等到PHP端的任务完成。AJAX或JQUERY中有任何选项,或者JavaScript中有任何最好的代码吗?

一个简单的方法是在运行php的目标页面中使用iframe。页面将被加载,iframe将等待php页面。您可以使用一些javascript来检查iframe中的更改或标志,以便继续进行流程。

您可以使用例如jQuery.ajax(url[,settings])异步发送所有请求。

文件如下:http://api.jquery.com/jQuery.ajax/

$.ajax({
    url: '<?php echo base_url();?>menu/showmsg',
    error: function(){
        return true;
    },
    success: function(msg){ 
        // make what do you want
    }
});