2015-12-26 18 views
0

我有這header.php我包括在所有我需要它的頁面。我使用了@include_once('header.php');以便能夠通過AJAX將頁面加載到另一個頁面的「容器」div中,而不必擔心會顯示兩次。但由於主頁面和加載頁面都包含標題,所以標題顯示兩次。我認爲include_once應該不會讓這種情況發生。我該怎麼辦?PHP:@include_once用於動態加載的內容?

+0

'include_once'確保它僅在當前運行的腳本中包含一次。當你通過AJAX加載時,這是另一個請求,並沒有考慮到它之前從另一個腳本運行的加載。 – Jon

+0

因此,我無法按照自己的方式使其工作? 我希望它被包含在兩個腳本中的原因是因爲人們可以轉到該頁面或動態加載它] –

+0

排除通過ajax加載的內容中的標題,或者在邏輯上重寫您的系統以使其標題在不需要時被包含。我們沒有太多的工作可以幫助你做到這一點。 – Jon

回答

0

Jon的建議是「正確的方式」 - 重新設計您的系統,以便僅在需要時包含標題。

然而,作爲(計算成本)的解決方法,在你的代碼,其中包括通過AJAX的頭,你可以檢查,只有在header.php中存在的元素的存在:

//We know that the string "<div id='header'> exists only in header.php 
if($('#header').length < 1) 
{ 
    //your including header.php code here 
}