function exportBasicInfo(){ var name=$("#username").val(); var area=$("#area").val(); layer.confirm('确定要导出基本信息吗?', { title:false, btn: ['导出', '取消'] }, function(index, layero){ window.location.href="<%=basePath%>../exportBasicInfo.jsp?name="+encodeURI(encodeURI(name))+"&area="+encodeURI(encodeURI(area)); layer.close(index); }); };
为什么网上会有人提出在客户端对字符串重复编码两次呢.
如果因为项目需要,不能指定容器使用何种编码规则来解码提交的参数, 比如:需要接收来自不同页面,不地编码的参数内容时。 (又或者是开发人员被这有点复杂的东东搞得晕头转向,不懂得如何正确的去做好这接收参数的工作)
这个时候,在客户端对参数进行二次编码,可以有效的避开“提交多字节字符”的这个棘手问题。
因为第一次编码,你的参数内容便不带有多字节字符了,成了纯粹的 Ascii 字符串。(这里把编第一次的结果叫成 [STR_ENC1] 好了。[STR_ENC1] 是不带有多字节字符的)
再编一次后,提交,接收时容器自动解一次 (容器自动解的这一次,不管是按 GBK 还是 UTF-8 还是 ISO-8859-1 都好,都能够正确的得到 [STR_ENC1])
然后,再在程序中实现一次 decodeURIComponent (Java中通常使用 java.net.URLDecoder(***, "UTF-8")) 就可以得到想提交的参数的原值。
接收端:
String area = request.getParameter("area"); area = URLDecoder.decode(area,"UTF-8"); String name = request.getParameter("name"); name = URLDecoder.decode(name,"UTF-8");
所需包<%@page import="java.net.URLDecoder"%>
相关推荐
本文将深入探讨URL编码的原因、原理以及如何解决URL传值乱码的常见问题。 URL(统一资源定位符)是互联网上资源的唯一标识,它包含了协议、主机名、路径和查询参数等部分。由于URL中可能包含非ASCII字符或特殊字符...
在Asp.Net开发中,遇到页面通过URL参数传递中文字符时出现乱码是...以上就是解决Asp.Net页面通过URL参数传递中文乱码问题的详细方法,通过选择合适的方法或组合使用这些方法,可以确保中文字符在URL中正确无误地传递。
这是一个JS把汉字转换编码格式避免乱码的类,相当于ASP或是.NET中的UrlEncode方法.使用方法是var str = UrlEncode("这里是你要转换的汉字");这个方法有个缺点,不支持全角标点,所以要配合下面的方法把全角转换半角才...
Java 页面URL传值中文乱码问题通常出现在前端Ajax请求中,当URL参数包含中文字符时,服务器端通过`request.getParameter()`获取参数时,可能会出现乱码现象。这是因为HTTP协议默认使用ISO-8859-1编码,而中文字符...
本篇文章将详细介绍如何解决JSP中的中文乱码问题,并通过示例代码进行说明。 1. **设置请求编码**: 在处理HTTP请求时,JSP页面可以通过`request.setCharacterEncoding("UTF-8")`方法来指定请求的字符编码。这是...
总之,动态表单提供了一种有效解决URL中文乱码问题的策略,特别是在需要传递复杂或包含中文的参数时,这种方法显得尤为实用。在实际开发中,我们可以根据项目需求和具体情况选择最适合的解决方案。
总结来说,通过在前端进行正确的编码处理,并在后端通过正确的解码方法还原数据,我们能够有效地解决js传值后台中文乱码的问题。同时,熟练掌握JavaScript的各项操作技巧,对于提升Web开发的效率和质量也有着显著的...
在使用jQuery的ajax()函数进行数据传输时,中文乱码问题常常困扰着开发者。这个问题主要出现在数据发送到服务器时,由于编码格式不一致导致的字符乱码。以下是一些解决此问题的方法: 方法一:使用`encodeURI()`...
("因为js url在传值的过程中使用的是js自己默认的字符集编码规则,我们必须把它转成属于我们自己的编码规格","UTF-8")%> ``` 这里使用UTF-8作为编码格式。 4. **接收参数**:在接收URL参数的页面,例如`Succ.jsp...
在讨论JSP(Java Server Pages)传值时,遇到的本地无乱码而测试机出现乱码的问题是一个典型的编码问题,常见于网络编程和Web开发中。以下是对标题、描述和部分内容所涉知识点的详细解析。 ### 知识点解析 #### ...
### LotusScript 代理获取 URL 的传值及解码 #### 一、背景介绍 在 Domino 服务器的应用开发中,我们经常需要处理通过 AJAX 技术从前端提交到后端的数据。其中,一个常见的问题是中文字符的乱码问题,尤其是在 POST...
以下是一些解决JS传值出现中文参数乱码的常用方法。 1. **使用`encodeURIComponent()`函数**: JavaScript的`encodeURIComponent()`函数可以对URL的一部分进行编码,它会将非字母数字字符转换为UTF-8序列,并用百...
如果数据包含中文或其他非ASCII字符,使用`encodeURIComponent()`函数进行URL编码,避免在传输过程中出现乱码。 ```javascript let data = { username: "张三", message: "你好,世界!" }; let encodedData = ...
尽管上述方法可以在一定程度上解决乱码问题,但最好的解决之道是建立一个完整的编码管理策略,涵盖应用的输入、输出以及中间处理的各个环节。在设计阶段就考虑到字符集的兼容性,避免在后期修复导致的复杂性。同时,...
本文将详细探讨如何在Struts2框架中通过JSON传值解决乱码问题的方法,涉及JavaScript编码和Java解码的相关操作技巧。 首先,我们来了解乱码产生的原因。在Web开发中,如果前端和后端没有对字符编码做统一的处理,就...
在 Domino XPages 开发中,有时我们需要通过 URL 传递参数,包括中文参数。然而,由于中文字符在 URL 中不被直接支持,因此需要进行编码处理。`dominoxpagesURL` 标签暗示了这是一个关于 Domino XPages 中 URL 参数...