2012-02-02 198 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'); 
    }); 
});