Ajax responseText 的一点阐述

2016-02-19 14:10 7 1 收藏

下面请跟着图老师小编一起来了解下Ajax responseText 的一点阐述,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!

【 tulaoshi.com - Web开发 】

前一段时间碰到这样的的问题,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不支持中文。至少在我的程序里面是这样子的。希望大家可以借鉴以下。

来源:http://www.tulaoshi.com/n/20160219/1606364.html

延伸阅读
标签: Web开发
假设数据库内容有id=1,name=name1,id=2,name=name2.。。。 sql查询后的字符串是 1,name1;2,name2;........ 每条记录以分号;分隔 每条记录的字段以逗号,分隔。 //---------------------------------------------------------------------------------------htmlhead/headbodyscriptlanguage="javascript"fun...
标签: Web开发
希望谁能帮我看一看问题出在哪?谢谢! register.html部分: 代码如下: !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" html head titleregister.html/title meta http-equiv="keywords" content="keyword1,keyword2,keyword3" meta http-equiv="description" content="this is my page" meta http-equiv="content-type...
标签: 秋季养生 健康
核心提示:一翻日历,立秋已至。千万不要以为秋天到了。在南方,尤其是广东,立秋不过是个“形式主义者”,由于受到三伏天末伏与秋老虎的双重作用,往往是言立秋而秋未至。 这个时候实际上还处于中医的季节划分中的长夏,即夏天的延长期。消暑工作丝毫减不得。 在此气候环境下,水分含量高达90%以上的节瓜可就派上大用场啦!作为冬瓜的...
MySql数据库是中小型网站后台数据库的首选,因为它对非商业应用是免费的.网站开发者可以搭建一个"Linux+Apache+PHP+MySql" 平台,这是一个最省钱的高效平台.在使用MySql进行开发时,MySql自带的文档对于新手来说是份很好的参考资料.本文是我在使用MySql中的小小心得。 当前一般用户的开发环境多是Windows或Linux,用户可以到http://www.m...
标签: 饮食禁忌
午饭,可是一日三餐当中,最令人期待的一餐了,因为早饭我们通常就会吃的特别匆忙,晚饭大多数人会因为减肥或者是其他原因,草草了事,所以午饭,怎样才会吃的好,怎样才能满足自己的味蕾,怎样可以让我们吃的满意,是我们一整个上午都会思考的事情,午餐,甚至还被图老师小编自己称为是精神支柱。 大多数人的午餐都会吃的特别丰盛,...

经验教程

907

收藏

95
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部