JS传值中文乱码解决方案

一、相关知识

1,Java相关类:

(1)java.net.URLDecoder类

  HTML格式解码的实用工具类,有一个静态方法:public static  String  decode(String   变量名,String   编码格式);给变量指定解码。

(2)java.net.URLEncoder类

  HTML格式编码的实用工具类,有一个静态方法:public static  String  encode(String   变量名,String   编码格式);给变量指定编码。

2,JavaScript的编码函数:

  encodeURI(String  URIstring):把字符串作为 URI 进行编码。

二、解决JS传值中文乱码

1,问题:

  js在url中传值,前台和后台编码不一致,导致中文乱码;

2,解决方案:

(1)方案一:

前台:js代码使用encodeURI()函数:url = encodeURI(url);注意:这里是整个URL地址,也可以是具体乱码变量。

后台:java代码String linename = new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8");

(2)方案二:

前台:jsp代码对url使用两次encodeURI()函数:url=encodeURI(encodeURI(url));//用了2次encodeURI

后台:java代码使用java.net.URLDecoder.decode(String  变量,String  编码);对指定变量解码

三、示例

前台:

var yhdh = encodeURI(yhdh);
top.Dialog.open({
URL : "user.do?ywtype=loadXq&type=update&user.yhdh=" +encodeURI(yhdh), //两次使用encodeURI()函数(这是js函数)

后台:

try {
String searchtext =java.net.URLDecoder.decode(userForm.getUser().getYhdh(),"UTF-8"); //进行解码,会抛异常,直接捕获即可。
userBean.setYhdh(searchtext);
} catch (UnsupportedEncodingException e) {
  e.printStackTrace();
}

JS传值中文乱码解决方案的更多相关文章

  1. Springmvc中@RequestParam传值中文乱码解决方案

    首先jsp表单里面有一些参数要传到controller中,通过以下方法接收: @RequestMapping(value="/orderPaper") public ModelAn ...

  2. Springmvc中@RequestParam传值中文乱码解决方案(转)

    @RequestMapping(value={"/list"},method=RequestMethod.GET) @ResponseBody public DeviceList ...

  3. js url传值中文乱码完美解决(JAVA)

    js url传值中文乱码完美解决(JAVA) 首先在你的jsp页面这样更改: var url="你要传入的Action的位置&ipid="+ipid+"& ...

  4. jquery的ajax()函数传值中文乱码解决方法介绍

    jquery的ajax()函数传值中文乱码解决方法介绍,需要的朋友可以参考下 代码如下: $.ajax({ dataType : ‘json', type : ‘POST', url : ‘http: ...

  5. ajax()函数传值中文乱码解决方法介绍

    jquery的ajax()函数传值中文乱码解决方法介绍,需要的朋友可以参考下 复制代码 代码如下: $.ajax({ dataType : ‘json',type : ‘POST',url : ‘ht ...

  6. aspx页面,中文乱码解决方案

    由于文件编码方式编码方式不统一出现样式中文乱码解决方案: 今天碰到的问题:页面字体样式设置的'微软雅黑',可页面没引用.我调试看到样式出现中文乱码了 这种问题,就需要转换文件的编码方式,如下两步即可解 ...

  7. JSP中pageEncoding和charset区别,中文乱码解决方案(转载)

    转载自:JSP中pageEncoding和charset区别,中文乱码解决方案 JSP指令标签中<%@ page contentType="text/html;charset=GB23 ...

  8. boost::xml——基本操作以及中文乱码解决方案 (续)

    本博文主要想说明以下两点: 1.对于上一篇的<boost::xml——基本操作以及中文乱码解决方案>解释,这篇博文基本解决了正确输入输出中英文问题,但是好像还没有解决修改中文出现乱码的问题 ...

  9. 基于Windows环境下cmd/编译器无法输入中文,显示中文乱码解决方案

    基于Windows环境下cmd/编译器无法输入中文,显示中文乱码解决方案 两个月前做C++课设的时候,电脑编译器编译结果出现了中文乱码,寻求了百度和大神们,都没有解决这个问题,百度上一堆解释是对编译器 ...

随机推荐

  1. 新发现:排序算法时间复杂度只有O(3n),命名为"wgw"排序法

    思路:首先在待排序数组i[]中找出最大的值,以(最大值+1)的大小创建一个空数组kk[],然后遍历待排序数组i[]中的值n,其值n对应数组kk[]中的第n个元素加1.最后再把数组kk[]排好序的值赋回 ...

  2. [LeetCode] 74. Search a 2D Matrix_Medium tag: Binary Search

    Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the follo ...

  3. Count(广工14届竞赛)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6470 这道题目题解就扔了个矩阵快速幂啥都没写.....这题解是太看得懂我这个弱鸡了. 既然是矩阵快速幂 ...

  4. js动态规划---背包问题

    //每种物品仅有一件,可以选择放或不放 //即f[i][w]表示前i件物品恰放入一个容量为w的背包可以获得的最大价值. //则其状态转移方程便是:f[i][w]=max{f[i-1][w],f[i-1 ...

  5. python list seq

    //test.py list1 = [1, 2, 3]list2 = [4, 5, 6] print cmp(list1, list2)print len(list1), len(list2)prin ...

  6. CI持续集成系统环境--Gitlab+Gerrit+Jenkins完整对接

    原文地址https://www.cnblogs.com/kevingrace/p/5651447.html 近年来,由于开源项目.社区的活跃热度大增,进而引来持续集成(CI)系统的诞生,也越发的听到更 ...

  7. iOS UI基础-15.0 UIWebView

    WebView介绍 知识点: 代码创建一个UIWebView OC调用html的js js页面调用OC 相关代码实现 代码创建一个UIWebView // 1.webView UIWebView *w ...

  8. cocos2d JS-(JavaScript) 静态方法的例子

    function User(name, age) { this.name = name; this.age = age; } var user = new User('angela',26); Use ...

  9. python知识补足

    1.class的init功能,初始化class,给出一些初始值 __init__可以理解成初始化class的变量,取自英文中initial 最初的意思.可以在运行时,给初始值附值, class Cal ...

  10. php url链接地址传数组方法 json_decode解析数组失败 经过url链接的json数组解析出错的解决方法 (原)

    先说出现的问题: 请求一个接口(例如  http://www.a.com/getmes.php)需要传一个数组参数 param ,值为 数组 array(0=>'刘师傅',1=>'1760 ...