直接代码说明$.ajax({
   type: "POST",
   url: "index.php?_m=userlist&_a=checkemail&"+Math.random(),
   data: "email="+this.value,
   success: function(msg){
   alert('1'+msg+'1')
   }
服务端代码 public function checkEmail(){
if (!empty($_POST['email'])){
if(M('passport_user_email')->findemail($_POST['email'])){
echo "false";
}
else{
echo "true";
}
}
}打印出来是
'1true
1'

'1false
1'后面多了一个换行
请问什么原因?  

解决方案 »

  1.   

    我也遇到过 接收的字符串匹配不上 就把两端的空白去了function trim(str){  //删除左右两端的空格或回车
    return str.replace(/(^\s*)|(\s*$)/g, "");
    }
      

  2.   

     alert(typeof msg);
    看是啥东东, 
    不行就用 jquery的trim()试试
      

  3.   

    我知道返回的页面中有换行符,我想知道怎么处理能让他不出现。目前我解决的办法就是在接收msg后将最后一个字符截了,substr(0,str.lenght-1)
    那请问我怎么能让返回的值直接正确,不出现这个换行符呢
      

  4.   

    echo "true";echo输出会有一个\n的echo 'aaa'
    echo 'bbb'实际
    aaa\n
    bbb\n
      

  5.   

    楼主是用PHP的,这种PHP问题怎么来问JS呢?而且还是PHP的基础。可以自己试用一下其它的PHP输出函数来代替ECHO看看。