与php无法在子目录中工作的ajax连接

时间:2014-07-13 23:02:29

标签: javascript php ajax

您好我目录中有一个javascript文件

  

root / assets / js / a.js

目录中的php文件

  

根/ PHP / foo.php

在a.js文件中,我尝试使用ajax来连接foo.php。如果a foo.php位于根目录a.k.a

root/foo.php 

该功能工作正常,但当我把文件放在上面的目录中没有任何作用。这是与连接相关的功能

if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp = new XMLHttpRequest();
    } else { // code for IE6, IE5
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState === 4 && xmlhttp.status === 200) {
           alert(xmlhttp.responseText);
        }
    }

    xmlhttp.open("GET","../../studentSignupPHP/test.php?q=" + str, true);

的相对路径
 xmlhttp.open(..)

对我来说似乎很好,所以我无法理解我做错了什么。你能救我吗?

foo.php

<?php echo "test"; ?>

1 个答案:

答案 0 :(得分:1)

不是从js目录遍历,而是使用对根路径的引用,如此

  

/php/foo.php

请参阅上面的charlietfl的评论原因。

编辑: 更新@charlietfl的评论

“路径依赖于您在浏览器中加载的页面,而不是存储js文件的位置。打开浏览器开发工具并查看网络选项卡,将看到浏览器尝试使用的路径ajax调用“