$.ajax提交,后台接受到的值总是乱码?明天再总结
//首先说明,我的服务器和页面编码都是GBK,所以尝试了很多种GBK的方式
前台:
function printFunction(){
window.print();
$.ajax({
url : '/tpzssearch/handleRecordLog.action',
type : 'post',
//各种尝试
//processData : true,
//scriptCharset:'GBK',
// contentType: 'application/x-www-form-urlencoded; charset=gbk',
// contentType: "application/x-www-form-urlencoded;charset=gbk",
data : {tablename:'<%=java.net.URLEncoder.encode(tablename,"UTF-8")%>',
search:'<%= java.net.URLEncoder.encode(session.getAttribute("oradetailQueryString").toString(),"UTF-8")%>',
info:'<%=java.net.URLEncoder.encode(rs,"UTF-8")%>'
}
});
} 后台:
//gbk互转UTF-8试过、ISO-8859-1互转gbk试过、ISO-8859-1互转UTF-8试过
public static String toUTF(String arg) {
if (arg != null && arg.trim().length() > 0) {
try {
arg = new String(arg.getBytes("GBK"), "UTF-8");
} catch (Exception e) {
}
} else {
arg = "";
}
return arg;
}
logModel.setTableName(URLDecoder.decode(request.getParameter("tablename"),"UTF-8"))
最后:就是传参数时java.net.URLEncoder.encode(tablename,"UTF-8"),接收参数时URLDecoder.decode(request.getParameter("tablename"),"UTF-8"),解决了
解决乱码的4个方向:
方法一:
在后台中使用request.setCharacterEncoding("UTF-8");
方法二:
$.ajax({
type:'post',
contentType:'application/x-www-form-urlencoded; charset=UTF-8'
});
方法三:
public static String toUTF(String arg) {
if (arg != null && arg.trim().length() > 0) {
try {
arg = new String(arg.getBytes("GBK"), "UTF-8");
} catch (Exception e) {
}
} else {
arg = "";
}
return arg;
}
方法四:
URLDecoder
随机推荐
- pyplot基本绘制(二)
本节主要解决在一个figure中放置多福图,以及图中一些注释文字的添加等问题. 先看一个效果图: 下面是实现代码: __author__ = 'hust' import numpy as np imp ...
- IOS网络开发概述
概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...
- css if hack之兼容ie
1.Css if hack条件语法< !--[if IE]> Only IE <![endif]-->仅所有的WIN系统自带IE可识别< !--[if IE 5.0]&g ...
- 程序员是怎么炼成的---OC题集--练习答案与题目(3)
1.init 2.initWithBytes:length:encoding: 3.initWithCharacters:length: 4.initWithCString:encoding: 5.i ...
- SQUID之cache_peer
一共关系到cache_peer/always_direct/never_direct/hierarchy_stoplist/prefer_direct等配置项. squid的使用指南上,关于alway ...
- HDU 4460
http://acm.hdu.edu.cn/showproblem.php?pid=4460 水题一道,oj时间卡的非常奇怪,把spfa的queue开成全局卡线过,别的全挂了,迪杰斯特拉的手写堆都超时 ...
- C++学习笔记15:操作符重载的函数原型列表(推荐)
//普通四则运算 friend A operator +(const A & lhs, const A & rhs); friend A operator -(const A & ...
- CI中的事物
$this->db->trans_begin(), 在使用时,设置了 mysql AUTOCOMMIT = 0,表示禁止自动提交, 在未提交和回滚之前,不会提交sql查询. AUTOCO ...
- mysql 获得当前月1号的日期 和 0点日期方法
day)) 当月0点时间:2015-12-01 00:00:00 day)) 当月1号时间:2015-12-01 10:45:22 day) 2015-12-01 <!-- 查询上月债权额度 - ...
- 解密Redis持久化
原文 http://blog.nosqlfan.com/html/3813.html 本文内容来源于Redis作者博文,Redis作者说,他看到的所有针对Redis的讨论中,对Redis持久化的误解是 ...