jQuery MiniUI

 找回密码
 立即注册
查看: 5034|回复: 5
打印 上一主题 下一主题

乱码问题 [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2012-12-7 17:40:51 |只看该作者 |倒序浏览
            grid.commitEdit();
            var rowData = grid.getChanges();

            grid.loading("保存中,请稍后......");
            var json = mini.encode(rowData);
            $.ajax({
                url: "gb0101update?PUKEY="+row.PUKEY,
                data: { data: json },

这个json是什么格式,我后台取出来都是乱码
form表单我取出来都是正常的

Rank: 9Rank: 9Rank: 9

沙发
发表于 2012-12-9 10:10:27 |只看该作者
注意页面、服务端、数据库编码一致。

Rank: 3Rank: 3

板凳
发表于 2012-12-11 14:34:03 |只看该作者
niko 发表于 2012-12-9 10:10
注意页面、服务端、数据库编码一致。

都是一致的,你的那个取出来是ISO-8859-1编码的

Rank: 1

地板
发表于 2012-12-11 16:16:26 |只看该作者
传递中文时手动编码解码就好了

Rank: 2

5#
发表于 2013-5-17 09:29:22 |只看该作者
本帖最后由 hyyy 于 2013-5-17 09:32 编辑
niko 发表于 2012-12-9 10:10
注意页面、服务端、数据库编码一致。

看了好多你的回复都如出一辙,我从头查到尾,不知为什么,通过ajax传到后台的竟是ISO-8859-1,我jsp页面上有
<%@ page language="java" import="java.util.*,cn.common.Cookies" pageEncoding="utf-8"%>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
语句,java内部本来用的就是utf-8,struts2中也有显式的指定action中取数据时用utf-8编码,

现在为何在action中取到ajax取得的汉字是乱码,通过转码发现,提交过来的数据是ISO-8859-1的,这是为何,难道跟你框架js文件的编码有关系 ?因为同一个web的应用另一个页面,jsp的编码部分是一样的,采用的是同步提交,即form.submit(),后台直接用request.getParameter取得的汉字就没有编码的问题,麻烦管理员给分析分析!

Rank: 9Rank: 9Rank: 9

6#
发表于 2013-5-17 09:45:01 |只看该作者
        request.setCharacterEncoding("UTF-8");
        response.setCharacterEncoding("UTF-8");       

在你后台处理ajax的页面加这个试试。
可以参考: demo/data/ajaxservice.jsp

你可以下载运行我们java开发包看是否有乱码的。

Archiver|普加软件

GMT+8, 2024-11-28 09:46 , Processed in 1.038717 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部