struts2 + jquery 乱码问题

问题描述

我的jsp页面时UTF-8,在java端httpRequest也是UTF-8,ajax提交的时候Content-Type也是application/x-www-form-urlencoded,但是ajax提交的时候java端获取到的数据却是中文乱码,表单提交一切正常,求解!

解决方案

解决方案二:
楼主的情况我也遇到过,在页面发送请求的时候先转码一次:encoudeurl();然后取出的时候在decodde转一次.我写的两个关键字可能不正确.
解决方案三:
ajax提交默认的编码方式是utf-8,java中一般都采用unicode编码,试试这样:在页面提交的时候做转码:value=encodeURIComponent(value);这个动作执行两次,然后再java端调用value=URLDecoder.decode(value,"UTF-8");就可以得到正确编码。
解决方案四:
ajax:name=encodeURI(encodeURI(name));java:java.net.URLDecoder.decode(name,"UTF-8");
解决方案五:
引用2楼gray_sky的回复:

ajax提交默认的编码方式是utf-8,java中一般都采用unicode编码,试试这样:在页面提交的时候做转码:value=encodeURIComponent(value);这个动作执行两次,然后再java端调用value=URLDecoder.decode(value,"UTF-8");就可以得到正确编码。

早实过了无用
解决方案六:
乱码有时确实很难解决~~~曾经也困惑过
解决方案七:
引用4楼folmos0123456的回复:

引用2楼gray_sky的回复:ajax提交默认的编码方式是utf-8,java中一般都采用unicode编码,试试这样:在页面提交的时候做转码:value=encodeURIComponent(value);这个动作执行两次,然后再java端调用value=URLDecoder.decode(value,"UTF-8");就可以得到正确编码。早实过了无用

jquery乱码解决方法很多,不同情况解决不同,2楼的算是常用的方法,如果不好使,楼主就google一下,很多解决方法。
解决方案八:
会不会是你用了两次转码之后,反而无效了
解决方案九:
下面是我的解决办法Strut2+MySql+Hibernate+ajax(jQuery)中文乱码解决办法:1.网页页面使用utf-8<metahttp-equiv="Content-type"content="text/html;charset=utf-8">2.ajax默认使用utf-8传输数据,但最好使用post,不要使用get3.Struts2中使用UTF-8.3.1在struts.properties中加上:struts.i18n.encoding=UTF-8[3.2使用Filter:从页面中传输数据到Struts2,需要使用过滤器把数据在交给struts2前转换成utf-8的:http://stevieliu.blogchina.com/stevieliu/6223098.html]试过不使用3.2照常可以收到中文.4.数据库也要使用utf-8,在建表时设置好.http://imysql.cn/charset_tips5.hibernate.cf.xml配置文件中与数据库的连接符串也要标明使用的编码为utf-8:<propertyname="hibernate.connection.url">jdbc:mysql://localhost:3306/mlm?useUnicode=true&amp;characterEncoding=UTF-8</property>6:Tomcat也使用UTF-86.1:Tomcat/bin/catalina.bat中开始部分(大概51行处)添加setCATALINA_OPTS=-Dfile.encoding=UTF-8或CATALINA_OPTS="$CATALINA_OPTS-Dfile.encoding=UTF-8"6.2:<ConnectorURIEncoding="utf-8"port="8080"protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443"/>Eclipse启动Tomcat会修改Tomcat的运行编码环境,从终端启动的又是另一种编码环境,所以Tomcat的配置也要手动修改7:HttpServletResponse(request)也要设置编码:response.setCharacterEncoding("UTF-8");
解决方案十:
页面传参表现实行xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");xmlHttp.send("id="+encodeURI(id)+"&question="+encodeURI(qq));就ok
解决方案十一:
按照楼主说的应该是没有问题的不过httpRequest设置编码只有form以post方式提交时才有效

时间: 2024-07-31 11:10:49

struts2 + jquery 乱码问题的相关文章

jqueryui-关于javaweb struts2 +jquery easyUI的问题

问题描述 关于javaweb struts2 +jquery easyUI的问题 问题:后台代码中我是通过重定向重新跳转到另外的页面的.但是却不能跳转. 其中,浏览器调试显示的respond内容正是 有我的administrationCenter.jsp页面,这就排除了代码写错,配置文件写错等问题吧?但是浏览器就是不跳转过去.怎么办? 前台ajax代码: $.ajax({ type : "POST", url : "recmanager", dataType : &

jsp+struts2+jquery ajax返回Internal server error

问题描述 jsp+struts2+jquery ajax返回Internal server error 架构: struts2+jsp+jquery 关键代码: jQuery.ajax({ url: 'business/xxxx.action', data: 'id='+id, type: 'POST', dataType:"json", error: function(request,textStatus,errorThrown) { alert(errorThrown); //前台

请求-struts2+jquery+uploadify上传图片时报错HTTP error

问题描述 struts2+jquery+uploadify上传图片时报错HTTP error struts2+jquery+uploadify上传图片时报错HTTP error,点击上传时firebug没有任何请求,也不报错,后太也无报错,为什么啊,折磨几天了,有木有大神赐教啊,在线等! 解决方案 uploadify是用flash上传的,浏览器调试工具监视不到这种请求的.你可以看服务器日志记录的错误或者配置uploadify的onUploadError配置打印错误信息看看 onUploadErr

jquery乱码与contentType属性设置问题解决方案_jquery

今天闲的无聊,把以前遗留的问题解决一下,比如让人头痛的Jquery乱码问题.其实这方面文章已经很多了,但全面解决各种问题的很少,今天总结一下,方便自己也方便大家. 原因很简单: 其实他的中文乱码就是因为contentType没有指定编码,对于不同Jquery的版本中这个地方有不同的设置,就拿我遇到的,jquery-1.6.1和jquery-1.8.3就有不同的定义. 解决办法:在jquery-1.6.1文件中,搜索'contentType' 然后在application/x-www-form-u

Struts2+jquery.form.js实现图片与文件上传的方法_jquery

本文实例讲述了Struts2+jquery.form.js实现图片与文件上传的方法.分享给大家供大家参考,具体如下: jquery.form.js是jQuery的一个官方用语支持异步上传文件的插件.官方网站:http://plugins.jquery.com/form/ 结合Struts2三步轻松实现文件上传 一般是针对一个页面可能不止一个Form表单,所以在一个面提交表单会影响到另一个表单,为此,图片上传表单就可以使用无刷新提交方式上传,也就是异步上传,这时jquery.from.js就派上用

ie 乱码-ie11 jquery 乱码问题

问题描述 ie11 jquery 乱码问题 是这样的我在js代码中有这样一句 var t=new Date().toLocaleTimeString();这个t值传到action的时候多了好多小问号,但是同样的代码,我放在ie9下运行就没事了.这个要怎么解决?

struts2, jquery 当一起用的时候怎么跳页?

问题描述 在自学jquery,自己用struts2+jquery进行练习的时候遇到点问题,struts2不跳页...把代码发出来,请帮忙指点下.....---------------------------struts.xml-------------------------------<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC "-//Apache Sof

struts2 jquery 打造无限层次的树_jquery

<%-- tree.jsp --%> <%@ page pageEncoding="gbk" contentType="text/html;charset=gbk" import="java.util.ArrayList" %> <%@ taglib uri="/struts-tags" prefix="s" %> <link rel="styleshee

Jquery乱码的一次解决过程 图解教程_jquery

  简单的请求,简单的响应,但是乱码产生了 Why? 乱码之所以产生,原因很简单,无非就是编码表用错了,如传的是big5字符,接收却使用utf-8,或utf-8编码,却用GB2312解码.   好吧,先确认一下是否请求过程中产生的乱码   那我发过去的是乱码吗?   打开C:/tmp/下的test.txt   这是什么编码,猜一猜?   看来客户端没错,且正确地到了服务器端了,那应该是asp.net搞错了编码了,HttpRequest类里找下有没有相关的Encoding相关的属性     看看w