首页 新闻 会员 周边

prototype.js get没有出现乱码,post出现乱码

0
悬赏园豆:100 [待解决问题]

jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
     pageEncoding="UTF-8"%>

<script type="text/javascript" charset="UTF-8">
   window.onload=function()
   {
     Event.observe('zipCodeField','blur',validateZipCode);
     $('addressField').focus();
   }
   function validateZipCode(event) {
        new Ajax.Request('servlet/ZipCodeValidatorServlet',
          {
            method: 'get',
            parameters: $('infoForm').serialize(true),
            onSuccess: function (transport) {
              if (transport.responseText.length != 0)
                //alert(transport.responseText);
                $('info').innerHTML=transport.responseText;
            }
          }
        );
      }
 </script>

servlet

StringBuilder result=new StringBuilder();
response.setContentType("text/html;charset=UTF-8");   
request.setCharacterEncoding("UTF-8"); 
String zipCodeValue=new String(request.getParameter("zipCode").getBytes("ISO-8859-1"), "UTF-8");
System.out.println(zipCodeValue);
String address=new String(request.getParameter("address").getBytes("ISO-8859-1"), "UTF-8");
System.out.println(address);
result.append(address);
response.getWriter().write(result.toString());

为什么get方式提交没有问题post提交出现乱码

渐远过客的主页 渐远过客 | 初学一级 | 园豆:102
提问于:2012-04-11 21:57
< >
分享
所有回答(2)
0

应该是两边编码不一致,你加上encoding参数(两边要一致),指定一下编码然后看看

artwl | 园豆:16736 (专家六级) | 2012-04-11 22:26

不是这个问题,我想知道为什么使用get方式提交后台接受和显示以及页面显示都没有问题,如果改成post提交的话就会出现乱码问题。

支持(0) 反对(0) 渐远过客 | 园豆:102 (初学一级) | 2012-04-11 22:31
0

应该是你的机器问题吧,有的时候就是会出现这个问题的,由于编码不同,你最好是添加下js参数编码
http://sjolzy.cn/ajax-servlet-returns-in-the-Chinese-garbled-garbled-garbled-post-code-submitted-by-a-large-sum.html,
你看看这个吧,应该可以帮助你点的。

rains | 园豆:860 (小虾三级) | 2012-04-11 22:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册