利用jQuery 解决URL请求参数有中文时出现乱码的问题
来源:互联网 发布:java web 案例 编辑:程序博客网 时间:2024/05/20 19:15
利用jQuery 解决URL请求参数有中文时出现乱码的问题
在开发的时候经常会碰到URL中请求参数含有中文的情况,这时如果在前台不作处理,直接在后台利用request.getParameter()拿对应的参数值就会出现中文乱码。
这时可以先利用jQuery对对应中文进行encodeURI(),例子如下:
前台对应代码
<!--省畋无关代码-->
<input type="button" id="submitA" value="重发短信"/>
<a id="dataA" style="display:none;"><span id="clickA">重发短信</span></a>
<!--${ordersSn} 和${itemName}是利用Freemarker从后台得到的值,其中itemName为订单名为中文-->
<input type="text" value="${ordersSn}" class="spanordersSn" style="display:none;"/>
<input type="text" value="${itemName}" class="spanitemName" style="display:none"/>
<!--省畋无关代码-->
<script type="text/javascript">
$(function(){
$("#submitA").click(function(){
var ordersSn=$(".spanordersSn").val();
var itemName=$(".spanitemName").val();
var url="member_order.html? isShotMassege=yes&ordersSn="+ordersSn+"&itemName="+ encodeURI(encodeURI(itemName));
$("#dataA").attr("href",url);
$("#clickA").trigger("click");
});
});
</script>
<!--省畋无关代码-->
后台对应代码
String itemName=request.getParameter("itemName");
itemName= java.net.URLDecoder.decode(itemName,"utf-8");
}catch(UnsupportedEncodingException e){
e.printStackTrace();}
可以看到在前台itemName中文参数利用了encodeURI(encodeURI(itemName))进行编码,在后台利
用 java.net.URLDecoder.decode(itemName,"utf-8")这进解码
前台为什么要进行两次encodeURI,而后台只有一次decode呢?
第一次编码的作用是将多字节字符转变成纯粹的 Ascii 字符串(这里把编第一次的结果叫成 [STR_ENC1] 好了。[STR_ENC1] 是不带有多字节字符的) 再编一次后,提交,接收时容器自动解一次(容器自动解的这一次,不管是按 GBK 还是 UTF-8 还是 ISO-8859-1 都好,都能够正确的得到 [STR_ENC1])然后,再在程序中实现一次Java中通常使用 java.net.URLDecoder(***, "UTF-8") 就可以得到想提交的参数的原值。
- 利用jQuery 解决URL请求参数有中文时出现乱码的问题
- 解决URL请求的中文乱码问题
- 解决Java中URL传递中文参数时出现乱码的问题
- 解决URL中文参数乱码的问题
- 解决URL中文参数乱码的问题
- JavaEE中request对象的请求参数为中文,获取时出现乱码问题的解决
- dtree中url参数中中文参数的传递,出现乱码问题的解决。
- 解决中文参数出现的乱码问题
- jquery获取URL中参数,解决中文乱码问题
- jquery获取URL中参数,解决中文乱码问题
- url 参数传递中文乱码问题 即<a href> 利用 js 的 encodeURI解决中文乱码问题
- Js获取url中的参数(已解决出现的中文乱码问题)
- url 传参数时出现中文乱码该怎么解决
- Spring Tomcat Post Get 请求参数有中文时出现乱码或+号变空格等关于编码的问题
- jquery获取URL中参数解决中文乱码问题的两种方法
- url中传递中文参数出现乱码的问题
- 在url中有中文乱码问题的解决
- ajax 解决url中文参数乱码问题
- QString与string的相互转换
- SpringMVC学习笔记(7) 返回Json格式数据
- Android获取wifi的名字(SSID)
- OGRE sdk1.9 配置 vs2012 win7旗舰版64位 初级入门实例
- POJ 1619 EKG Sequence(EKG数列 ,数据处理技巧)
- 利用jQuery 解决URL请求参数有中文时出现乱码的问题
- 再按一次退出程序 工具类
- 树状数组详细介绍
- yii 伪静态处理
- 黑马程序员——高新技术之反射
- Vision引擎 地形编辑器 - 主工具栏
- 日本日历的表示
- MySQL增加新用户账户
- vim快捷键