//如果传送参数是直接赋予的,就会产生乱码!
复制代码 代码如下:
http_request.open(post,url,true);
http_request.setrequestheader('content-type', 'application/x-www-form-urlencoded');
http_request.send(action=+strname+&val=+val); //如果val的值为中文,则产生乱码
//解决方法很简单:使用javascript中的escape(string) 函数
复制代码 代码如下:
http_request.open(post,url,true);
http_request.setrequestheader('content-type', 'application/x-www-form-urlencoded');
http_request.send(action=+strname+&val=+escape(val)); //val的值为中文不会产生乱码
关于在ajax中get回的responsetext中文乱码的最简解决办法
用ajax来get回一个页面时,responsetext里面的中文多半会出现乱码,这是因为xmlhttp在处理返回的responsetext的时候,是把resposebody按utf-8编码进解码考形成的,如果服务器送出的确实是utf-8的数据流的时候汉字会正确显示,而送出了gbk编码流的时候就乱了。解决的办法就是在送出的流里面加一个header,指明送出的是什么编码流,这样xmlhttp就不会乱搞了。
复制代码 代码如下:
php:header('content-type:text/html;charset=gb2312');
asp:response.charset(gb2312)
jsp:response.setheader(charset,gb2312);
以上就介绍了halo theme mjolnir mix php+ajax传送中文会导致乱码的问题的解决方法,包括了halo theme mjolnir mix方面的内容,希望对php教程有兴趣的朋友有所帮助。