jquery ajax 传数据到后台乱码的处理方法
数据传递之前,先对中文进行编码,如下红色字体:
function saveCommentTemplate() { $.ajax({ cache : false, type:'get', dataType:'json', url:'comment/insert', contentType:'application/json;charset=UTF-8', data:{name:encodeURI($("#name").val()), content:encodeURI($("#content").val())}, success:function(data){ alert("ok") }, error: function() { alert("error") } }); $("#bottom").hide(); }
等数据传过来时,在对数据进行解码:
@RequestMapping(value = "insert") @ResponseBody public void insert(@RequestParam("name") String name,@RequestParam("content")String content) throws UnsupportedEncodingException { name=URLDecoder.decode(name,"UTF-8"); content=URLDecoder.decode(content,"UTF-8"); commentTemplateService.saveCommentTemplate(name,content); }