`

javascript传递中文参数值时乱码问题的解决

 
阅读更多
如果您确定不论是您的JSP页面还是您的Servlet都已经采取了最基本的乱码处理方法之后,通过javascript传递的中文在接受的时候调试输出的是?的话,就试试下面这个做法,也是跟别人学的:

   你可能采用的ajax传递的中文参数正如:

tempo.open("GET","Query?condition="+encodeURI(encodeURI(query))+"&kind="+kind,true);

   或者仅仅是在页面<head>标签中嵌入的一小段script代码传递的中文参数:

function changefont(){//下拉列边框变化时触发session中的用户默认字体发生变化

      var fontname=document.getElementById('fontname').value;

      alert(fontname);

      var url;

      url="Communicate.jsp?user2=";

      url=url+'<%=user2%>';

      url=url+"&user2id="+'<%=user2id%>'+"&changefontname="+encodeURI(encodeURI(fontname));

     // alert(url);

       window.location.href=url;

      }

您可能已经发现他们的一个共同点了, encodeURI(encodeURI(fontname)),这就是解决问题的方法了, 希望对您有所帮助.

下面是接受部分解码方法:

String fontwords=request.getParameter("changefontname");//   fontwords=java.net.URLDecoder.decode(fontwords,"utf8"); //post 传递的时候,一定是用utf8编码的,url 自己可以设定

//System.out.println(condition); //当调用request.getParameter()函数时,会自动进行一次URI的解码过程,调用时内置的解码过程会导致乱码出现。而URI 编码两次后,request.getParameter()函数得到的是原信息URI编码一次的内容。再用可控的解码函数 java.net.URLDecoder.decode()就可解出原始的正确的信息。
转自:http://apps.hi.baidu.com/share/detail/15533619
分享到:
评论

相关推荐

    jquery获取URL中参数解决中文乱码问题的两种方法

    当我们需要在两个页面间通过URL传递参数时,经常会遇到中文乱码问题。这个问题主要是因为URL中的参数可能没有经过正确的编码和解码处理。为了解决这个问题,我们可以采取一些方法,特别是当使用jQuery来获取URL参数...

    ajax传递中文参数乱码解决办法

    ### AJAX传递中文参数乱码解决办法 在Web开发过程中,数据传输是不可或缺的一部分,而AJAX作为一种无需重新加载整个页面的情况下就能与服务器交换数据的技术,被广泛应用于动态数据交互场景中。然而,在处理中文等...

    extjs 前后台交互参数出现中文乱码问题的解决方法

    ### extjs前后台交互参数出现中文乱码问题的解决方法 #### 问题背景与原因分析 在使用MyEclipse开发工具进行Web应用开发时,尤其是采用ExtJS框架结合Ajax技术进行前后端数据交互的过程中,可能会遇到一个常见的...

    解决JS传递中文乱码问题

    本文将深入探讨如何解决JavaScript(简称JS)在传递中文字符时出现的乱码问题,并提供具体的解决方案。 #### 一、问题背景 在Web应用中,前端页面与后端服务之间通过HTTP请求进行数据交互是非常常见的操作。当这些...

    AJAX技术使用XMLHttpRequest对象传递参数的中文乱码问题

    综上所述,解决AJAX技术使用`XMLHttpRequest`对象传递参数时出现的中文乱码问题,关键在于保持客户端与服务器端的编码一致性。通过合理设置请求头、使用适当的编码和解码函数,可以有效避免此类问题的发生。此外,在...

    asp.net页面通过URL参数传值中文乱码问题解决办法

    3. **JavaScript传递参数**: 当从HTML页面直接跳转到ASP.NET页面并传递中文参数时,可以使用JavaScript的`escape()`函数编码,然后在ASP.NET页面解码。例如: - HTML页面: ```html &lt;script language="...

    传递汉字丢失或乱码的问题

    在IT行业中,尤其是在进行数据传输、文件存储或者编程过程中,我们常常会遇到“传递汉字丢失或乱码”的问题。这通常是由编码不一致、字符集转换错误或文件读写操作不当等因素引起的。以下是对这个问题的详细分析和...

    Web报表FineReport页面如何传递中文参数

    在使用报表开发工具FineReport设计web报表时,经常需要嵌入iframe到页面中,并给iframe的src属性指定报表地址的同时传递参数值。在参数值、参数名称以及报表名称中,如果包含中文字符或特殊字符,直接传递可能会导致...

    Java Http请求传json数据乱码问题的解决

    在实际解决乱码问题的过程中,如果发现使用Base64加密传输中文数据还会出现问题,可以改用URL编码的方式来传输数据,即使用JavaScript的`encodeURI`函数对数据进行两次URL编码,后端接收到后进行一次URL解码即可。...

    .Net获取URL中文参数值的乱码问题解决方法总结

    在Web开发中,处理URL中的中文参数值时经常会出现乱码问题,尤其是在采用URL编码和解码的场景下。在.NET框架中,我们可以通过多种方法解决这一问题,以下是详细的方法和知识点总结: 1. web.config设置 .NET应用...

    奇数个中文字符url传递乱码

    为了解决奇数个中文字符URL传递乱码的问题,可以采用JavaScript来实现正确的编码处理。具体步骤如下: 1. **获取原始URL**:首先获取用户输入或系统生成的原始URL。 2. **编码处理**: - 使用`encodeURI()`函数...

    javascript通过url向jsp页面传递中文参数导致乱码解决方案

    在Web开发中,使用URL传递参数是一种常见的方式,但在处理中文字符时经常会出现乱码问题。由于HTTP协议本身是基于ASCII字符集,而中文字符不是ASCII字符,所以在URL中的中文字符如果不经过特殊处理就会造成乱码。...

    解决qr_code中文乱码问题

    本教程将详细解释这个问题,并提供一个开源示例帮助你理解和解决中文乱码问题。 首先,我们需要了解二维码编码的基本原理。QR Code是一种二维条形码,能够存储大量的文本、数字、URL等信息。它使用了40个不同的版本...

    get方式传参中文乱码问题的解决方案

    在Web开发中,经常遇到GET请求传递中文参数时出现乱码的问题。这种现象通常出现在不同编码格式之间的转换过程中,导致浏览器或者服务器端解析参数时出现问题。本文将深入探讨GET方式传参中文乱码的原因,并提供多种...

    URL传中文参数导致乱码的解决方案之encodeURI

    为了解决这个问题,我们可以利用JavaScript中的`encodeURI`函数来对中文参数进行编码,然后在服务端进行相应的解码操作。 `encodeURI`函数是JavaScript提供的一个内置方法,它的作用是对整个URL进行编码,包括特殊...

    SqlServer数据库中文乱码问题解决方法

    在SQL Server数据库中遇到中文乱码问题,通常是由于安装时默认的排序规则不适用于中文环境导致的。默认情况下,SQL Server可能使用拉丁文排序规则,这在处理中文字符时会出现问题。解决这个问题需要理解SQL Server的...

    Request.QueryString 乱码问题

    ### Request.QueryString 乱码问题解析及解决方案 在Web开发中,经常会遇到通过URL...通过以上分析与解决策略,我们可以有效地解决`Request.QueryString`中出现的中文乱码问题,提高Web应用程序的稳定性和用户体验。

    ASP.NET javascript时间乱码问题

    当ASP.NET和JavaScript的时间数据传递出现问题时,主要表现为时间字符串在JavaScript中显示为乱码。以下是一些常见的解决策略: 1. **统一编码**:确保ASP.NET和JavaScript文件都使用相同的编码,例如UTF-8。在ASP...

    解决jsp中文乱码问题

    本文将详细介绍如何解决JSP中中文乱码的问题,包括页面传递中文参数时可能出现的乱码情况。 #### 一、中文乱码的原因分析 中文乱码主要是因为字符编码不一致导致的。当数据从一个环境传递到另一个环境时,如果这两...

    GET方法URL中传递中文参数乱码的解决方法

    然而,当我们在GET请求的URL中直接传递包含中文字符的参数时,...总之,处理GET方法中中文参数乱码问题的关键在于正确编码和解码URL中的非ASCII字符。同时,为了安全性与效率,应尽量避免在URL中传递复杂或敏感的信息。

Global site tag (gtag.js) - Google Analytics