jsp 通过 ajax调用servlet
servlet查询数据库用out.println写出一个 xml
但是在JavaScript中获取的xml中文都变成了问号,就是说有几个汉字就是几个问号
字母数字没有问题
高手指导下
我qq 627920898
邮箱 [email protected]

解决方案 »

  1.   

    写一个字符过滤器
    public class Encoding implement Filter
    {
        .....
        在你的INIT方法中
        request.setCharacterEncoding("gbk");
       ...
    }
      

  2.   

    见我们教程的jsp乱码部分:
    http://www.family168.com/tutorial/jsp/html/jsp-ch-02.html#jsp-ch-02-02
      

  3.   

    servlet中加上
    response.setCharacterEncoding("GBK");
    request.setCharacterEncoding("GBK");
      

  4.   

    就这样做,不过感觉不如用 utf-8
      

  5.   

    用过滤器
    采用post提交 
    <form action="/Web/sendmsgservlet" target="message" method="POST"> 再不行就这样吧 String username=request.getParameter("username") 
    把username变量强制转换为GBK 
    String usernameGBK = new String(username.getBytes("ISO-8859-1"),"GBK");
      

  6.   

    Ajax请求编码为UTF-8
    你在被请求servlet里面写上
    response.setContentType("text/html;charset=UTF-8");
    request.setCharacterEncoding("UTF-8");
    试试
      

  7.   

    涉及到ajax比较复杂,首先ajax的编码要改成中文的或者utf-8,qi其次服务器段的jsp要支持中文编码
      

  8.   

    解决在网页中的乱码有下面几总方法:
      1. get 的request , 用request.setContentType="text/html;charset='GBK'";
        resp.setCharacterEncoding("GBK");
      2. 在tomcat的server.xml下面,加一句代码 找到connetor节点,port =8080,的,
         加代码 URIEncoding="GBK";
      3.用过滤
        
      
      

  9.   

    Ajax 传递的是UTF-8编码,所以你的JSP页面的编码建议用 UTF-8
      

  10.   

    String usernameGBK = new String(username.getBytes("ISO-8859-1"),"GBK");
    JSP页面的编码建议用 UTF-8