我正在尝试为我的网站设计一个消息系统,但我无法让我的ajax运行。 所以我做了一个更简单的文件之间的交互版本。
这是我的文件test.php和load.php都在根文件夹(public_html)下。
我在test.php中有ajax函数。 load.php只是简单地回应“哇”。
$("#test").click(function(){
alert("Clicked.");
$.ajax({
url:"/load.php",
type:"POST",
beforeSend: function(){
alert("testing");
},
success:function(result){
$("#result").html(result);
alert(" sss "+result);
}
}).error(function(){alert("wrong");});
});
现在它完美无缺。
...........如何设置相对路径...................
这是更复杂的设计
3个文件,全部在不同的文件夹中:
所以当用户加载messages.php时,它会加载control.php然后运行ajax调用control.php。
我对如何为ajax设置这些路径感到困惑 (包括messages.php中的control.php工作正常)
由于
答案 0 :(得分:39)
要了解ajax网址,我有两件事应该永远记住。
1。如果我们把斜杠放在ajax url的开头,ajax url模式将是`hostname / yourFile` 例如:
// current url: http://sample.com/users
// ajax code load from users page
$.ajax({
url: '/yourFile.php',
...
});
// ajax url will be: http://sample.com/yourFile.php
2。如果我们在开头不使用斜杠,则ajax url将添加到浏览器中的当前URL。例如:
// current url: http://sample.com/users
// ajax code load from users page
$.ajax({
url: 'yourFile.php',
...
});
//...ajax url will be http://simple.com/users/yourFile.php
我希望这些东西可以帮助那些想要使用ajax的人。 快乐的编码,谢谢。
答案 1 :(得分:5)
如果您尝试联系的文件位于根目录中,则可以使用/[file].php
,这样无论您在路径上哪个页面都是正确的。听起来你有一个相对路径问题。你在控制台中有任何错误吗?