2016-01-16 65 views
0

我有一個通過$()。load()加載內容的選項卡控件,然後加載的頁面會將數據從json調用加載到服務器。我不確定這是否是有效的方法。使用Ajax調用加載標籤內容

基本上我想知道加載標籤內容的最佳方式,它將包含另一個Ajax調用來獲取json數據。我認爲所有這些阿賈克斯調用會阻礙性能。

$("#tab-about").click(function() { 
    $("#tab-content").load("/about"); 
    /* about content will then have it's own ajax call for json data */ 
}); 
+0

然後合併您的請求,以便您的初始選項卡加載是預先填充的,並且只有在需要更改時纔會進行第二個調用。有時候這樣做的複雜性並不值得,而且你會繼續並允許雙AJAX請求。這是一個折衷,你必須評估自己。 – Jasen

+0

我試圖看看是否有一種簡單的方法,但可能值得考慮使用angularjs或emberjs來完成此操作。 – Ralph

+0

我實際上決定首先加載json數據並在回調函數中執行.load來加載頁面/模板,然後我可以填充數據。至少這樣,當頁面加載時數據已經可用。 – Ralph

回答

0

性能問題取決於您的項目。但代碼可能變成越野車。 確保把第二Ajax調用在setTimeout的,因爲它可能不叫當您上傳website.Try這樣的:它包含函數結束後

setTimeout(function(){ /*Your code for ajax load content */ },0); 

功能的setTimeout的運行。