【发布时间】:2015-08-19 01:12:43
【问题描述】:
我有以下javascript函数:
function test() {
jQuery.post("http://www.example.com/test.php", {})
.done(function(data) {
alert(data);
})
.fail( function(xhr, textStatus, errorThrown) {
console.log(xhr);
console.log(textStatus);
console.log(errorThrown);
});
}
test.php 文件是这样的:
<? echo "TEST"; ?>
当我通过单击页面上的某些内容或通过在控制台中键入来调用此函数时,警报不会触发,而是 jQuery.post 的失败部分被触发,我得到以下值:
xhr -> 对象
textStatus -> “错误”
errorThrown -> ""
我检查了 firefox 调试器网络,我看到请求正在发送到所需的 url,并且左侧的小圆圈变为绿色,这意味着我从服务器获得了某种响应,但是传输的列是单个“-”行,接收的列是 0 字节。如果我从浏览器调用页面“http://www.example.com/test.php”,它可以正常工作。
可能是什么问题,或者我该如何继续调试此错误?
找出问题所在,如果有人遇到同样的错误,请参阅下面我自己的答案:|
【问题讨论】:
-
您的 PHP 是否启用了短开放标签?
-
是的,因为如果我直接在浏览器中写入 url,文件可以正常运行。
-
你的初始页面也在
http://www.example.com/下吗? -
是的,这是 tomclegg 的问题。
标签: javascript php jquery ajax