2014-05-16 86 views
0

我想用ajax讓我的網站在不刷新整個網站的情況下打開鏈接(只有1 div的內容正在改變,頁眉/頁腳/導航總是相同的)。Ajax(加載函數)問題

在標題我加js:

<script type="text/javascript" src="js/general.js"></script> 

index.php文件看起來是這樣的:

<?php 
    include '/gui/header.php'; 
    include '/gui/nawigacja.php'; 
?> 

<div id="content"></div> 

<?php include '/gui/footer.php'; ?> 

而且general.js看起來是這樣的:

$(document).ready(function(e) { 
    $('#content').load('content/main.php'); 

    $('ul#slider li a').click(function() { 
     var page = $(this).attr('href'); 
     $('#content').load('content/'+ page + '.php'); 
     return false; 
    }); 

    $('ul#menu li a').click(function() { 
     var page = $(this).attr('href'); 
     $('#content').load('content/'+ page + '.php'); 
     return false; 
    }); 
}); 

它運作良好在本地主機(xampp)上,但是當我想將它移動到遠程免費服務器進行測試時,加載功能不起作用(網站不會不願意) d,但是當我刪除「$('#content')。load('content/main.php');」它開始加載,但是然後我的ajax沒有加載內容,因爲沒有ajax) 。

有什麼辦法來解決這個問題呢? 對於任何形式的幫助都不無幫助。

+3

您是否檢查了控制檯的錯誤?我會想象你需要使所有的URL相對於根目錄:$('#content')。load('/ content/main.php');' - 注意'content'前面的'/'。 –

回答

0

你的JS看起來不錯,我猜URL路徑不正確。通過在content前添加/來使其相對於根目錄。

$(document).ready(function(e) { 

    $('#content').load('/content/main.php'); 

    $('ul#slider li a').click(function() { 
    var page = $(this).attr('href'); 
    $('#content').load('/content/'+ page + '.php'); 
    return false; 
    }); 

    $('ul#menu li a').click(function() { 
    var page = $(this).attr('href'); 
    $('#content').load('/content/'+ page + '.php'); 
    return false; 
    }); 
}); 
+0

現在嘗試了這一點,但不幸的是它沒有奏效。有沒有可能,因爲服務器不好,它可能工作不正常?畢竟它在localhost上工作。 – Zyngi

0

也許問題在於緩存。 ? 試試看:

var d1 = new Date(); 
var cache = d1.getTime(); 
$('#content').load('/content/main.php?cache=' + cache);