2011-11-16 58 views
0

我使用Ajax从PHP脚本请求数据,但返回数据始终以一个空格开头 - 萤火虫和alert()均显示该数据。
JS部分:jquery.ajax()+ PHP返回值以空格开头

$("#onVSearch").click(function(){ 
     $.ajax({ 
      url:"/j/getVideo", 
      data:{"url":$('.sv input').val()}, 
      success:function(data) 
      { 
      alert(data.substr(0,1));//this gives blank 
      alert(data.substr(0,2));//this will give 0 
      } 
     }) 
    }) 

和PHP部分:

if(isset($_GET['url'])) 
{ 
echo 0;// I've tried both echo 0 and echo '0' 
} 

我认为它是由PHP文件和js文件的编码差异造成的,但它们都设置为UTF-8无BOM。
原因是什么?

UPDATE:
我现在用JSON格式从PHP数据传递到JS,和它运作良好...任何想法?

回答

2

我很确定你的一个PHP文件,你有一个错误的空间以外的<?php?>

+0

我刚刚发现空间只出现在js脚本中。如果我在浏览器中直接访问j/getVideo?url = d,那么就没有空间。 – LotusH

0

您必须看看PHP代码的更大一部分。也许标签之外的空间或新线可能会导致它。另外显然看看,如果你不在其他地方回声。