我很难让AJAX请求在临时服务器上工作。它在我的开发机器上运行得很好,但是当我上传它时,所有的AJAX请求都停止工作。我发现,如果我将相关网址(例如“index.php”)更改为绝对网址(“http://example.com/index.php”),请求将再次生效,但我不明白为什么。jQuery AJAX请求中的相对与绝对网址
请求示例:
jQuery.post('index.php', {id: 1234, action: 1, step: 1}, function(data) { /* something */ });
这是不行的,我甚至不Firebug控制台显示出来。虽然成功处理程序被调用,但这很令人困惑。
这只是正常:
jQuery.post('http://example.com/index.php', {id: 1234, action: 1, step: 1}, function(data) { /* something */ });
任何人能解释为什么AJAX请求这样的行为? x_X
检查本地和公共服务器上php短标签的区别,有时候这是问题。 – Sarfraz 2010-03-02 13:54:55
您是否使用网址重写?在正常情况下,它应该像上面定义的那样工作。 – 2010-03-02 13:55:57
是的,我正在使用URL重写。每个网址都被重写为index.php。它是一个Typo3 Realurl设置... – fresskoma 2010-03-02 14:30:02