ajax传值到后台,如果是中文字符串的话,可能会出现乱码的问题

$.ajax({
     type:‘get‘,
     url:‘updateAttendanceContent.action‘,

     data:‘attenRegistContent.registId=‘+id+‘&attenRegistContent.RContent=‘+encodeURI(value,"UTF-8"),
     success:function(msg){
        alert(msg);
        window.location.reload();
     },
     error:function(msg){
        alert("更新失败!"+msg);
     }

    })

在前台ajax函数那 把要传的中文字符串使用encodeURI(str,enc)函数处理一下

如果后台还是有乱码的话,

在后台使用URLDecoder.decode(str,enc)处理一下字符串

    String RContent = null;

    try {
        RContent = URLDecoder.decode(content.getRContent(),"UTF-8");

   } catch (UnsupportedEncodingException e1) {

        e1.printStackTrace();
    }

    attenRegistContent.setRContent(RContent);
时间: 2024-10-07 05:16:11

ajax传值到后台,如果是中文字符串的话,可能会出现乱码的问题的相关文章

asp .net mvc ajax 传值到后台,并放回JSon值解析

什么是 AJAX ? AJAX = 异步 JavaScript 和 XML. AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. 传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面. 有很多使用 AJAX 的应用程序案例:新浪微博.Google 地图.开心网等等. AJAX定义个用法参考http://www.w3school.com.cn/jquer

使用Ajax传值到后台

需求: 在web页面输入参数,通过Ajax将参数传入服务器,在服务器端进行接收 1.新建一个web项目,名称:Ajax 2.修改index.jsp 代码如下 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <%@ page contentType=&quo

html提交中文字符串到php出现乱码问题解决方法

以utf-8为例 1.IDE默认编码为utf-8 2.在<head></head>中写入<meta http-equiv="content-type" content="text/html; charset=utf-8" />; 3.在Apache的配置文件httpd.conf中添加“AddLanguage”或“AddCharset”的行,在这些行最前面增加一行:AddDefaultCharset utf-8 (刚安装好的Apac

jquery ajax传值,get方式后台中文乱码

通过jquery ajax传值,后台出现中文乱码,经过一番摸索后发现原来客户端浏览器通过get方式传递到项目后台时,编码格式是ISO-8859-1,需要我们在后台经过转码才能正常使用.方法如下: str = new String(str.getBytes("ISO-8859-1"), "utf-8"); 需要注意的是,如果在本地测试,后台解析的默认字符编码是gb2312,则不需转码,因此代码修证为: if(!StringUtil.getEncoding(str).e

Ajax回调函数返回的中文字符串乱码问题

通过ajax提交请求,返回的response所带的中文字符串一直显示为乱码,写了如下代码也无效: response.setCharacterEncoding("UTF-8"); response.getWriter().print("返回结果"); 后来在web.xml 添加如下描述,终于解决问题: <filter> <filter-name>CharacterEncodingFilter</filter-name> <fi

PHP截取中文字符串方法总结

PHP截取中文字符串有时会出现乱码 使用一下三种方式解决乱码: <?php @header('Content-type: text/html; charset=UTF-8'); $arr = "sa撒的发dfa多少sfd看sdf得12上24飞452机[email protected]$#^辣^&%椒粉b"; /****************************************************************** * 程序一:PHP截取中文字符

SpringMVC项目中中文字符乱码问题及解决办法总结(非专业最优解决办法) -- ajax传值乱码; request.getParameter()乱码;

情况一: ajax中传值时是乱码(后台可以获取到中文字符,但用@ResponseBody返回时前台为乱码) 情况二: Controller 中 request.getParameter()获取到的是乱码 @RequestMapping(params = "method=submit") public String submit(HttpServletRequest request, ModelMap modelMap) throws Exception{ String uname =

SpringMVC Ajax请求时返回json中文字符串的乱码问题的解决方案

1.org.springframework.http.converter.StringHttpMessageConverter类是处理请求或相应字符串的类,并且默认字符集为ISO-8859-1,所以在当返回json中有中文时会出现乱码. 2.StringHttpMessageConverter的父类里有个List<MediaType> supportedMediaTypes属性,用来存放StringHttpMessageConverter支持需特殊处理的MediaType类型,如果需处理的Me

web基础知识(一)关于ajax传值最基础东西

HTTP方法之 GET对比POST GET:从指定的资源请求数据, POST:向指定的资源提交要被处理的数据 GET方法: 请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的: /test/demo_form.asp?name1=value1&name2=value2 有关 GET 请求的其他一些注释: GET 请求可被缓存 GET 请求保留在浏览器历史记录中 GET 请求可被收藏为书签 GET 请求不应在处理敏感数据时使用 GET 请求有长度限制 GET 请求只应当用于取回