奇怪的是,ajax响应包括空格

Fra*_*sco 8 javascript php jquery

我有几个JS函数用$ .ajax jquery方法调用不同的php文件...昨天一切都很好,但在清理完我的代码后,我不知道我做了什么,但现在ajax响应就像"[space]data"而不是"data". .

我可以在Js中使用修剪功能,但我想修复问题的根源......

?>为了避免这种情况,我所有的php文件都丢失了,在<?php我确定之前,只是检查过,没有空间......

我怎么会引入这个错误?是服务器?浏览器?

有趣的是昨天我用JSLINT清理了我的代码..!馊主意..

谢谢

Cod*_*aft 20

当我遇到同样的问题时,它只是在关闭PHP标签之后的回车或空格,这是一个非常容易引入的偶然事情.

确保在脚本第一行的开头打开PHP标记,最后关闭它并删除关闭标记后的所有内容(应该很容易在一个好的编辑器中找到).

我看不出没有理由不关闭你的PHP标签不会真的很烦人..但那就是我!

  • PHP将EOF视为与结束PHP标记无关.因此,文件末尾的关闭PHP标记是多余的.并且,正如您所发现的那样,它容易出错.除了打破AJAX请求之外,如果你在DOCTYPE之前得到任何空格,你可以将一些版本的IE发送到quirksmode.在我的日常工作中,我们将其作为一个习惯,以避免关闭PHP标签,我从未在我的个人工作中使用它. (2认同)

Xtr*_*ith 10

我知道我已经迟到了这个帖子,因为我遇到了同样的问题.我能够确认虽然您可以清除回调函数中的所有间距,但仍然可以在响应文本中获得这些空格/回车(您甚至可以在"网络"下的chrome开发人员工具中看到这一点标签).

所以我测试并发现,如果你把ob_clean();回调函数放在顶部,那么它会清除所有这些空格.我不太了解这个函数只是在codex中提到它(http://codex.wordpress.org/AJAX_in_Plugins#Debugging).希望能帮助那些因为同样的问题而在这里找到方法的人