Ajax responseText 的一点阐述

xinruyuan16

xinruyuan16

2016-02-19 14:10

下面请跟着图老师小编一起来了解下Ajax responseText 的一点阐述,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!
前一段时间碰到这样的的问题,Ajax从后台得到的中文信息怎么都是空。后来到网上搜资料,大多是以下这样。
  
  用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");
  
  但是我按照在这种方法,无论如何都没有成功过。真是误人子弟啊。先把我的代码贴出来。
  
  publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
  
  throwsServletException,IOException
  
  ...{
  
  /***//**
  
  *设置请求的编码格式,因为Ajax程序默认都是通过UTF-8编码传递字符,所以在接收字符前,请设置请求的编码格式为UTF-8
  
  */
  
  request.setCharacterEncoding("UTF-8");
  
  /***//**
  
  *设置输出信息格式,因为Ajax在接收返回的信息的时候,默认的也是UTF-8编码,所以返回时,请设置编码格式为UTF-8如果你要返回的是
  
  *XML信息,即Ajax调用responseXML则用下面语句代替该语句
  
  *response.setContentType("text/xml;charset=UTF-8");//返回的xml文件
  
  */
  
  response.setContentType("text/text;charset=UTF-8");//返回的是文本信息
  
  PrintWriterout=response.getWriter();
  
  //out.println("/response");
  
  if(rs==true)
  
  out.write("ReturnInforreturntrue/returninfor用户名称不能为空/infor/ReturnInfor");
  
  out.close();
  
  }
  
  前台很简单:
  
  scriptlanguage="javascript"
  
  alert("返回的信息为:"+xmlReq.responseText)
  
  /script
  
  就是这样,无论如何都得不到中文。不知何故。
  
  后来把后台的response.setContentType("text/text;charset=UTF-8");//返回的是文本信息,改成XML传递,则运行正常。
  
  后来发现的确如此responseText不支持中文。至少在我的程序里面是这样子的。希望大家可以借鉴以下。
展开更多 50%)
分享

猜你喜欢

Ajax responseText 的一点阐述

Web开发
Ajax responseText 的一点阐述

关于Ajax responseText 的一点阐述

Web开发
关于Ajax responseText 的一点阐述

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

预防多一点 腹泻少一点

育儿知识
预防多一点 腹泻少一点

关于IE缓存和AJAX的一点思考和疑问

Web开发
关于IE缓存和AJAX的一点思考和疑问

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

备孕吃什么早餐 杂一点慢一点

电脑网络
备孕吃什么早餐 杂一点慢一点

生命长一点

生活常识 生活小常识
生命长一点

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

独家:C#数据库操作的三种经典用法

独家:C#数据库操作的三种经典用法

Ajax核心概念的神秘面纱(6)

Ajax核心概念的神秘面纱(6)
下拉加载更多内容 ↓