Javascript 在php代码点火器中完成加载后,立即查看多个查询

Javascript 在php代码点火器中完成加载后,立即查看多个查询,javascript,jquery,codeigniter,Javascript,Jquery,Codeigniter,我使用的是CodeIgniter,在我看来,有三种方法调用各自的控制器方法,加载来自数据库的数据。我在一个单独的函数中同时调用所有这些方法。我遇到的问题是,有些方法在不同的时间显示。有没有一种方法可以在最后一个函数完成加载后,同时显示所有三个函数的数据? 这就是我现在拥有的 function function1() { $("#container1").load("/method1/"); } function function2() { $("#contain

我使用的是CodeIgniter,在我看来,有三种方法调用各自的控制器方法,加载来自数据库的数据。我在一个单独的函数中同时调用所有这些方法。我遇到的问题是,有些方法在不同的时间显示。有没有一种方法可以在最后一个函数完成加载后,同时显示所有三个函数的数据? 这就是我现在拥有的

function function1()
 {  
    $("#container1").load("/method1/"); 
 }
 function function2()
 {  
    $("#container2").load("/method2/"); 
 }
 function function3()
 {  
    $("#container3").load("/method3/"); 
 }
这是它调用所有这三个函数的主要函数

function callall()
{
  function1();
  function2();
  function3();
}

load
接受已完成的回调。您可以隐藏所有元素,然后仅在调用回调3次后显示它们

编辑:代码

$("#container1").load("/method1/", handleCompleted); // put handleCompleted in all 3

completedCount = 0
function handleCompleted() { completedCount++; if(completedCount == 3) showAll() }
反而

function function1()
 {  
       return   data1;
 }
 function function2()
 {  
       return   data2;

 }
 function function3()
 {  
   return   data3;
 }


function callall()
{
  $data[1] =function1();
  $data[2] = function2();
  $data[3] = function3();
  $data['container3'] = $this->load->view('view', $data, TRUE);
}

实际代码可能不同

为什么这和codeigniter有什么关系?因为总有人要它。如果你对这个问题没有任何见解,请不要回答。我知道我可以做类似于
$(“#container”).load(url,function(){//do something})但是对于三个函数如何?我只需要做三次,然后调用我的函数吗?我认为这是行不通的。这三个容器不存在,直到我按下一个按钮调用函数showall(),该函数调用所有这三个函数。如果我用你的方法。函数1、2和3从未得到调用