jquery AJAX提交乱码的处理

大部分前后台数据交互产生乱码的原因都是因为前后天编码方式不统一的原因 , AJAX乱码的原因也是因为编码格式的不统一 , 当然 , 我这么说肯定有大部分的同志会说 : 扯淡 , 劳资已经统一编码格式了 !   当初我也是这么想的 , 废话不说 , 试下下面的这种方式 : 

  首先在JS中使用AJAX跳转的时候:

              var url = encodeURI(encodeURI(你要跳转的路径));        //不要问为什么要进行两次编码 , 我也不知道 , 反正你得进行两次编码

              $.ajax({
                     url:url,               //在这儿直接使用已经编码的url

                     type:"POST",
                     dataType:"JSON",
                     success:function(data){
                        if(data.success){
                           alert(data.msg);
                       }else{
                          alert(data.msg);
                      }
                   }
               });

       controller中:

            public void surveyResult(HttpServletRequest request,HttpServletResponse response){
                  String param = request.getParameter("param");                                            //param中不包含中文字符可直接获取使用
                  String params = URLDecoder.decode(request.getParameter("params"));    //params中含有中文,由于前台进行了编码所以这儿要进行解码
            }



当然 , 关于这种处理乱码的方式网上还有很多 , 只要能解决问题其实都行

你可能感兴趣的:(java)