Jquery - Ajax Call的中文乱码问题

在Java中,有时会碰到奇怪的中文乱码问题,无论是在web.xml中设置相关的utf-8/gbk2312 filter,还是在js中或者在java中进行编码的encode和decode都会出现中文乱码问题。如下代码所示:

function loadParentOrg() {
        var url = "getOrgsByLevel.patrol?level=中文";
        alert(url);
        $.ajax({
          url: url,
          async: true,
          type: 'post',
          success: function(organizations){
//                       alert(organizations);
                }
        })
}

如上所示,将中文写在url中,无论是type为post还是type为get,都会出现中文乱码问题。

解决中文乱码的最好方式是使用post的方式(type:'post')并且将发送的数据写在data字段中,如下所示:

function loadParentOrg() {
        var url = "getOrgsByLevel.patrol";
        alert(url);
        $.ajax({
          url: url,
          async: true,
          type: 'post',
          data: {
                  level:$("#level").val()
          },
          success: function(organizations){
//                       alert(organizations);
                }
        })
}

相关推荐