`
zjcheng
  • 浏览: 91994 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Ajax中文乱码处理

    博客分类:
  • Ajax
阅读更多
URL编码方法有3种
escape()   ,unescape()             encodeURI(),decodeURI()               encodeURIComponent(),decodeURIComponent()   这几种编码所起的作用各不相同

escape()   方法:    

采用ISO   Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是%20。  

不会被此方法编码的字符:   @   *   /   +  

encodeURI()   方法:  

把URI字符串采用UTF-8编码格式转化成escape格式的字符串。  

不会被此方法编码的字符:!   @   #   $&   *   (   )   =   :   /   ;   ?   +   '  

encodeURIComponent()   方法:  

把URI字符串采用UTF-8编码格式转化成escape格式的字符串。与encodeURI()相比,这个方法将对更多的字符进行编码,比如   /   等字符。所以如果字符串里面包含了URI的几个部分的话,不能用这个方法来进行编码,否则   /   字符被编码之后URL将显示错误。  

不会被此方法编码的字符:!   *   (   )   '  

因此,对于中文字符串来说,如果不希望把字符串编码格式转化成UTF-8格式的(比如原页面和目标页面的charset是一致的时候),只需要使用escape。如果你的页面是GB2312或者其他的编码,而接受参数的页面是UTF-8编码的,就要采用encodeURI或者encodeURIComponent。  

在后台JAVA处理函数:

JS是:escape()函数        
Java是:      
java.net.URLEncoder.encode()      
java.net.URLDecoder.decode()      
但是这个函数已经不推荐使用了
现在推荐使用
java.net.URLEncoder.encode(str,encode);
java.net.URLDecoder.decode(str,encode);

这样就构成了统一的编码格式下面举简单的个例子:
在服务器端:
String   encode=java.net.URLEncoder.encode( "大家好 ", "utf-8 ");
//encode=( "%E5%A4%A7%E5%AE%B6%E5%A5%BD "
String   decode=java.net.URLDecoder.decode( "%E5%A4%A7%E5%AE%B6%E5%A5%BD ", "utf-8 ");

客户端解码Javascript:
decodeURIComponent(xmlHttp.responseText);
客户端传送时编码:
encodeURIComponent( "大家好 ")

encodeURI( "大家好 ")
这样就可以解决中文乱码编码问题了
分享到:
评论

相关推荐

    Ajax中文乱码问题解决方案

    本文将深入探讨Ajax中文乱码问题的成因,并提供一系列解决方案。 **一、问题原因** 1. **编码格式不一致**:服务器与客户端(浏览器)之间使用的字符编码格式不同,例如服务器使用GBK编码,而浏览器使用UTF-8编码...

    Ajax 中文乱码问题

    ### Ajax 中文乱码问题详解 #### 一、引言 在进行Web开发的过程中,我们经常需要使用Ajax技术来实现异步数据交换。然而,在处理包含中文字符的数据时,经常会遇到中文乱码的问题。这个问题主要源于不同的编码方式...

    jquery+asp ajax 中文乱码问题解决文档

    ### jQuery + ASP AJAX 中文乱码问题解决方案 在开发基于jQuery和ASP的Web应用程序时,中文乱码问题可能成为困扰开发者的一大难题。特别是在使用Ajax进行前后端数据交互时,中文字符可能会出现乱码现象,影响用户...

    ajax中文乱码如何解决

    首先,我们要理解Ajax中文乱码的根源,它通常涉及到字符编码的不一致,尤其是在客户端与服务器之间的通信过程中。 Ajax(Asynchronous JavaScript and XML)是一种创建动态网页的技术,允许在不刷新整个页面的情况...

    Ajax中文乱码问题解决方法

    本文将深入探讨Ajax中文乱码问题的原因及其解决方案。 首先,我们需要理解Ajax乱码的根源。当JavaScript发送HTTP请求时,如果服务器和客户端之间关于字符编码的约定不一致,就会导致乱码。常见的原因包括: 1. **...

    java认证_Ajax中文乱码问题及解决方法.doc

    【Java认证:Ajax中文乱码问题及解决方法】 在Java Web开发中,使用Ajax进行异步数据交互时,经常会遇到中文乱码的问题。这主要涉及到字符编码的处理,特别是当Ajax请求发送的数据包含中文字符时。以下是两种常见的...

    AJAX中文乱码解决

    本教程将详细介绍如何解决AJAX中文乱码问题,以在Windows Server 2008环境下为例,但原理适用于其他操作系统。 首先,我们需要理解乱码产生的原因。乱码通常是由字符编码不一致引起的。服务器和客户端之间传输的...

    ajax提交乱码

    在IT领域,特别是Web开发中,遇到“Ajax提交乱码”的问题是非常常见的,尤其是在处理中文或其它非英文字符集时。根据给定的文件信息,我们可以深入探讨如何使用Jquery来解决这一问题。 ### Ajax提交乱码问题的本质 ...

    Struts框架下Ajax发送中文乱码问题的解决

    在实际应用中,我们常常会遇到Ajax与服务器交互时出现中文乱码的问题,尤其是在发送和接收中文数据时。这个问题主要涉及到字符编码的处理,解决起来需要对HTTP协议、字符编码原理以及Struts框架的工作机制有一定的...

    ajax解决中文乱码(java/jsp)

    在Web开发中,尤其是在使用Java与JSP技术栈进行开发时,经常会遇到的一个问题是:如何处理AJAX请求中的中文字符乱码问题。本篇文章将详细介绍如何通过前端编码处理、后端参数接收以及响应头设置等手段来有效解决这一...

    ajax提交中文乱码解决方法

    综上所述,解决AJAX提交中文乱码的问题主要涉及客户端和服务端两个方面的编码处理。在客户端通过`URLEncoder`进行编码,并确保Content-Type正确设置;在服务端则通过`URLDecoder`进行解码,并对Servlet容器及程序中...

    AJAX中文乱码总结

    本篇文章将对AJAX中文乱码问题进行深入探讨,并提供解决策略。 1. 乱码产生的原因 - 数据编码不一致:服务器返回的数据编码与前端页面的编码格式不一致,比如服务器使用UTF-8,而前端页面使用GBK。 - AJAX请求...

    Ajax乱码小结

    在使用Ajax技术进行前后端交互的过程中,常常会遇到字符编码的问题,特别是当涉及到中文或其他非ASCII字符时,容易出现乱码现象。根据题目中的描述,“Ajax乱码:当调用`request.getParameter()`函数时,会自动进行...

    Ajax实例,处理了中文乱码

    一个Ajax的初学小例子,包括两个文件,getText.html,zipecode.jsp.在zipecode里输入1,2,3会从jsp里读取对应的city和prov并放到对应的文本框...并且做了中文处理,输入“徐家汇”会得到邮编等。在Tomcat6下测试通过。

    Ajax乱码解决方案(docx)

    Ajax乱码问题主要涉及到字符编码的处理,包括服务器端、客户端以及文件的编码设置。解决Ajax乱码问题的关键在于确保整个数据传输链路上的编码一致性。 1. **字符编码** - **UTF-8**:广泛使用的编码格式,支持多种...

    ajax提交,后台中文乱码解决

    在IT领域,尤其是在Web开发中,处理中文字符时经常遇到的一个问题是中文乱码。这个问题尤其在使用Ajax进行异步数据提交时更为突出。Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,...

    ajax乱码解决方案

    UTF-8编码是一种常见的Unicode实现,它使用1到4个字节来表示每个Unicode字符,对于中文汉字,通常每个字占用3个字节。因此,当Ajax发送或接收UTF-8编码的数据时,理论上不应出现乱码。 然而,乱码问题可能源于以下...

    ajax到servlet乱码解决

    例如,我们使用 AJAX 通过 URL 传递中文参数 "中文测试" 给 Servlet,Servlet 在接收参数时却变成了乱码 "�������"。这使得我们的应用程序无法正确地处理中文参数。 解决方案 要解决这个问题,我们可以从两...

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

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

Global site tag (gtag.js) - Google Analytics