2012-02-02 95 views
0

我在我的页面上(page1.php)一个名为result的div,当您点击一个带有loadlink id的链接时就会更新。它发出了一个URL一起page2.php的脚本是:php jquery div刷新

$(function() { 
    $(".loadlink").click(function(event) { 
    event.preventDefault(); 
    $("#result").load($(this).data('url')); 
    }); 
}); 

我想它,所以它也更新另一个DIV叫crimes这个运行后,从一个网址page3.php数据。我如何更改代码来执行此操作?

+1

一个更正:你声明'当你点击一个带有loadlink id的链接。周期表示法表示您正在寻找具有'loadlink'类的元素。 – Jasper 2012-02-02 21:48:08

回答

1

可以使用​​功能一旦这一个完成运行另一个Ajax请求的回调函数:

$(function() { 
    $(".loadlink").click(function(event) { 
     event.preventDefault(); 
     $("#result").load($(this).data('url'), function() { 
      $('#crimes').load('page3.php'); 
     }); 
    }); 
}); 

注:如果第二个AJAX请求不依靠第一,那么你可以同时运行它们(只要一个接一个地调用它们,每当成功返回时它们都会更新DOM)。然而,你不知道哪一个会先回来,这就是回调函数的用处,你会知道在发送下一个请求之前已经完成了。

+0

这是正确的,如果你不想'#罪行'加载后,直到'#结果'加载。目前还不清楚OP究竟在寻找什么。 – AndrewR 2012-02-02 21:49:01

+0

其实OP说:'在这之后',但是当你发布你的评论时我正在添加我的注释,所以我也不完全确定OP想要什么。 – Jasper 2012-02-02 21:51:11

+0

我希望在更新结果之后更新犯罪分子。我试过这段代码,但无法正常工作。 – user1022585 2012-02-02 22:13:24

0

只需添加另一个加载()到点击功能。

$(function() { 
    $(".loadlink").click(function(event) { 
    event.preventDefault(); 
    $("#result").load($(this).data('url')); 
    $("#crimes").load('page3.php'); 
    }); 
});