`

jQuery中文乱码处理总结

 
阅读更多
jQuery中文乱码处理总结:

1.  最简单的方式,是将项目的编码统一设置为UTF-8. 将数据交互时的编码都统一为"UTF-8";

2.  如果项目的编码已经统一设置为GBK或GB2312,则在ajax调用向服务端传递中文参数时容易出现中文乱码, 这时的处理方式如下:

后台如:

/* =============禁止缓存============== */
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Expires", "0");
/* =============禁止缓存============== */
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
//request.setCharacterEncoding("UTF-8");
String userName = request.getParameter("userName");
userName=URLDecoder.decode(userName, "UTF-8");
             
              //在springmvc中,如没有通过request,或直接设置jquery的编码设置,则需要如下方式转换。
     // mykeyword = new String(keyword.getBytes("iso-8859-1"),"UTF-8");
              //但如果是encodeURI()函数转换,则如下就可以。注意,这时参数在 url后面。
              userName=URLDecoder.decode(userName, "UTF-8");

前台如:

var myurl="grzx/validateUserNameIsExists.do?userName="+username;
myurl=encodeURI(myurl);
myurl=encodeURI(myurl);
jQuery.ajax({
url:myurl,
type:'POST',
async:false,
data:{},
success:function(data){
    var msg=eval('('+data+')');
  //  var msg=JSON.parse(data);
      if(!msg.result){
    jQuery('#myusername').attr('value','');
         alert('用户名已存在!请用新的用户名');
      }
    }
   }); 

进行两次编码。  在前台传递的“哈哈大笑”,在后台编码前为:“%E5%93%88%E5%93%88%E5%A4%A7%E7%AC%91”;就算成功了。

当然也可以只进行一次编码,方式是将jquery的编码设置为"UTF-8"; 加上;charset='UTF-8'就好了。如: contentType : 'application/json;charset=UTF-8', 
分享到:
评论

相关推荐

    jspdf中文乱码解决方法.zip

    总结起来,解决jspdf中文乱码的关键步骤包括引入支持中文的字体、设置正确的字符编码、正确添加中文内容以及保持库版本的更新。遵循以上步骤,你应该能够成功地在生成的PDF中看到清晰的中文文本。在实际开发过程中,...

    jquery中文乱码的多种解决方法

    ### jQuery中文乱码的多种解决方法 #### 一、引言 在Web开发过程中,中文乱码是一个常见的问题,尤其是在使用jQuery进行异步请求时。本文将详细介绍如何解决使用jQuery时遇到的中文乱码问题,并提供多种解决方案。 ...

    struts2乱码处理

    ### Struts2乱码处理详解 #### 背景与挑战 在Web开发中,特别是使用Struts2框架时,中文乱码问题常常困扰开发者。无论是前端还是后端,只要涉及中文字符的传递与处理,都有可能出现乱码现象。本文将针对Struts2中的...

    json 中文乱码解决方案

    在处理JSON数据时,经常会出现中文乱码的问题,尤其是在不同编码格式间进行转换时更为常见。本文将详细介绍如何解决JSON中的中文乱码问题,并提供几种简单实用的方法来帮助开发者避免这类问题的发生。 #### 一、...

    jQuery ajax方法传递中文时出现中文乱码的解决方法

    总结来说,解决jQuery AJAX请求中文乱码问题的步骤包括: 1. 确保`contentType`设置为`"application/x-www-form-urlencoded;charset=UTF-8"`。 2. 使用POST方法,或根据服务器配置调整请求类型。 3. 确认服务器端...

    JQuery 传送中文乱码问题的简单解决办法

    在开发Web应用时,中文字符在传输过程中可能会出现乱码问题,尤其是在使用JQuery进行Ajax通信时。本文将深入探讨两种解决JQuery传送中文乱码问题的方法。 **方法一:客户端编码,服务端解码** 在JQuery中,当发送...

    AJAX中文乱码总结

    中文乱码问题在AJAX应用中时有出现,主要表现为从服务器获取的数据在前端显示时出现乱码。本篇文章将对AJAX中文乱码问题进行深入探讨,并提供解决策略。 1. 乱码产生的原因 - 数据编码不一致:服务器返回的数据...

    JQuery AJAX提交中文乱码的解决方案

    总结来说,解决JQuery AJAX提交中文乱码问题的关键在于确保客户端和服务器端字符编码的一致性。可以通过在AJAX请求中显式地设置字符集为UTF-8来解决,从而让服务器端能够正确地解码请求中的中文字符。这不仅适用于GB...

    escape --AJAX和JS传中文乱码的最终解决方案

    在开发Web应用时,我们经常会遇到一个棘手的问题:AJAX和JavaScript在处理中文字符时出现乱码。这是因为浏览器、服务器以及数据编码之间的不匹配所导致的。"escape"函数在JavaScript中扮演着重要的角色,它可以帮助...

    jquery14.1chm、jquery1.3.2vs2008中文版智能提示

    总结来说,这个压缩包是jQuery初学者的宝贵资源,不仅有详细的中文文档帮助理解API,还有VS2008的插件提升开发效率。同时,了解并正确处理字符编码也是开发者必备的基本技能之一。通过深入学习和实践,可以快速掌握...

    如何解决JQuery ajaxSubmit提交中文乱码

    在Web开发过程中,使用JQuery的...以上是解决JQuery ajaxSubmit提交中文乱码问题的知识点总结。理解这些关键概念和步骤可以帮助开发者避免在实际开发中遇到的中文乱码问题,并确保Web应用的稳定性和用户体验。

    JQuery异步获取返回值中文乱码的解决方法

    总结来说,解决JQuery异步获取返回值中文乱码的问题,重点在于客户端和服务器端的编码统一。确保请求和响应的编码设置正确,并且在服务器端正确处理输入输出编码,可以有效避免中文乱码的问题。在实际开发过程中,...

    jQuery.validationEngine 表单验证中文版

    总结来说,jQuery.validationEngine是一个功能强大且灵活的前端表单验证工具,能够有效帮助开发者实现数据的实时校验,提升用户交互体验,同时也便于多语言环境的适应。通过学习和掌握这个插件的使用,可以极大地...

    JQuery发送ajax请求时中文乱码问题解决

    总结以上所述,要解决JQuery发送ajax请求时出现的中文乱码问题,需要从两个方面着手:确保Web项目的web.xml配置文件中设置了正确的字符编码过滤器,以及在JSP页面中设置了正确的字符编码,并使用POST方法发送ajax...

    JQuery ajax 返回json时出现中文乱码该如何解决

    总结一下解决JQuery ajax返回JSON时出现中文乱码的方法: 1. 确保服务端在返回响应时,正确设置响应头中的Content-Type为"text/html;charset=UTF-8"。 2. 前端在使用$.ajax请求时,通常不需要特别指定请求的编码...

    Jquery网页出现的乱码问题的三种解决方法

    总结来说,解决Jquery网页乱码问题通常涉及以下几个步骤: 1. 检查并修改Jquery脚本文件的编码格式,确保它与网页使用的编码一致。 2. 在***开发中,检查web.config文件中的编码设置,确保网站全局编码设置正确。 3....

    jQuery使用serialize()表单序列化时出现中文乱码问题的解决办法

    总结来说,处理jQuery serialize()方法导致的中文乱码问题,关键是要理解encodeURIComponent与decodeURIComponent的编码解码机制,并在需要的时候对序列化数据进行正确的解码处理。这样可以确保数据的正确传输和使用...

    response响应数据变成???&使用jquery发送带中文参数数据的get请求得到响应数据乱码解决过程

    ”以及使用jQuery发送带有中文参数的GET请求时出现的响应数据乱码问题。 首先,让我们分析一下响应数据变成“???”的原因。在Java的Servlet中,通常我们需要在接收到请求时设定请求体的字符编码,通过`request.set...

Global site tag (gtag.js) - Google Analytics