tanlingcau 2011-08-11 11:51
浏览 414
已采纳

jQuery中get设置编码依然乱码,但post不乱码。求细节。

[code="javascript"]
$.ajax({
url : './data.do?action=unregister',
dataType : 'json',
contentType : "application/x-www-form-urlencoded; charset=UTF-8",
timeout : 300000,
data : {
serviceNames : serviceNames
},
success : function(data) {
jAlert('成功注销服务!', 'message');
oTable.fnDraw();
},
error : function(request, status, error) {
BRICK.ajaxError(request, status, error);
}
})
[/code]

上面代码,用get,设置了编码为UTF-8,依然乱码。

[code="javascript"]
$.ajax({
url : './data.do?action=unregister',
type : "post",
dataType : 'json',
timeout : 300000,
data : {
serviceNames : serviceNames
},
success : function(data) {
jAlert('成功注销服务!', 'message');
oTable.fnDraw();
},
error : function(request, status, error) {
BRICK.ajaxError(request, status, error);
}
})
[/code]

上面代码,用post,默认使用UTF-8,没有乱码。

请求方法一为何不行?

  • 写回答

5条回答 默认 最新

  • redstarofsleep 2011-08-11 11:56
    关注

    get是直接在url后面传的,要转码成“%FG%44。。。。”这种形式的。然后后台取到后再转回来。
    Java里面是:Decoder.decode();Encoder.encode();

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?