2012-09-28 80 views
0

我有一個Ajax功能:如何使用相對路徑(jQuery的)一個AJAX網址

$.post("/ajax.php",{query:data},function(result){...

ajax.php的位置是在我的域名的根(即site.com/ajax.php )

當用戶在文件夾中在同一個腳本被調用(即site.com/m/)

我所面臨的問題是,我要引用的根目錄。通常/file.php是指主目錄,而不是file.php

我的請求正在發送到http://site.com/m/ajax.php

有誰知道我該怎麼辦?

+2

在JavaScript中,當您引用'/'時,它將採用文檔根,而不是服務器根。將服務器根存儲在一個變量中,並在您的JS函數調用中使用它。 – Ohgodwhy

+0

所以你的意思是存儲'document.location.hostname'(或'<?php $ _SERVER ['HTTP_ROOT']?>')並在'絕對'路徑中使用它? –

+0

好像是在服務器端重定向 – nrodic

回答

0

我最後做的@Ohgodwhy建議:

$.post(
     "<?php echo $_SERVER['HTTP_HOST'];?>`/ajax.php", 
     {query:data}, 
     function(result){ 
     // alert(result); 
     }); 

到目前爲止,它的工作對我來說!

+0

是的,它也適用於我「http:// <?php echo $ _SERVER ['HTTP_HOST'];?>。我不確定這個解決方案有多強大? – PUG