使用ajax的时候php传过来的字符串中无端端出现了空格,或者说是乱码

星煌的鼓动 发布于 2016/06/12 22:24
阅读 400
收藏 0
PHP
$.ajax({
             type: "GET",
             async: false,
             url:'get_v_msg.php?CP='+CP+'&RN='+rn, //改,加入whose
    dataType:json;
             success: function (respondText)
             {
              var respond=respondText.split("*");
              var name=respond[0].split("#");
var photo=respond[1].split("#");  
 var date=respond[2].split("#");
 var v_link=respond[3].split("#");
               for(var i=0;i<name.length;i++)
               {
                 data=data+"<li><div class='v-box' style='color:#666'>";
 data=data+"<img class='v-img' src='pic/llss-video-pic/"+photo[i]+".jpg'/><div class='v-info'>";
 data=data+"<a class='v-title' href='"+v_link[i]+"'>"+name[i]+"</a><div class='v-date'>";
 data=data+date[i]+"</div></div></div></li>";
               }

    }});


php传回来的是一个字符串,没有设置json什么的。。

php里面也设置了header('Content-Type:text/html;charset=utf-8');

运行后用F12看发现字符之间都有�。。。



加载中
2
mark35
mark35
看看js,html,php文件保存为utf-8时是否添加了BOM标识。utf-8字符集(文件)一般不需要BOM头部的
梦想岛
梦想岛
百度一下,php remove bom
0
wuqing
wuqing
文件也要用相同的编码
星煌的鼓动
星煌的鼓动
回复 @wuqing : 还是要谢谢你QVQ,浏览器报错那里显示字符都变成了%EF%BF这样的
wuqing
wuqing
回复 @星煌的鼓动 : 我没招了
星煌的鼓动
星煌的鼓动
回复 @wuqing :乱码还是没有消失。。
wuqing
wuqing
回复 @星煌的鼓动 : 加个cache参数试试 $.ajax({ type: "GET", async: false, cache : false,
星煌的鼓动
星煌的鼓动
回复 @wuqing : alert出来的效果是每个字符中间都有一个空格。。
下一页
0
没有头像也是一种帅
没有头像也是一种帅
会不会是\r\n和\n的问题?
星煌的鼓动
星煌的鼓动
浏览器报错那里显示字符都变成了%EF%BF这样的。。。
返回顶部
顶部