今天遇到一个问题,有关ajax 请求中传输中文,遇到乱码的问题。

如下代码:

function UpdateFolderInfoByCustId(folderId, folderName, custId) {
    $.ajax({
        type: "Post",
        contentType: "application/x-www-form-urlencoded; charset=utf-8",
        url: "http://localhost/CRM/Ashx/HandKBSucessCustomer.ashx?Method=UpdateCustomerByCustId&folderId="
        + folderId + "&folderName=" + encodeURI(encodeURI(folderName)) + "&custId=" + custId,
        success: function (msg) {
            alert(msg);
        },
        error: function (error) {
            alert(error);
        }
    });
 }

如上代码 如果只是传“&foderName=”+folderName 的话,汉字就会产生乱码,如果经过encodeURL 转换两次的话,汉字编码会变为类似

“%e6%b5%8b%eb%af%95” 的格式。转换为这种格式之后,在获取的时候在转码,如下所示:

public void UpdateCustomerByCustId()
        {
            int folderId = Convert.ToInt32(Request["folderId"]);
            string folderName = Request["folderName"];
            string folderName2 = Convert.ToString(System.Web.HttpUtility.UrlDecode(folderName));
            int custId = Convert.ToInt32(Request["custId"]);
            bool res = false;
            try
            {
                res = CustomerBusiness.UpdateCustomerByCustId(folderId, folderName2, custId);
            }
            catch (Exception ex)
            {
               throw;
            }
            Response.Write(res);
        }
    }
}

经此转换之后,即可获取到传输的汉字。

ajax 请求如何解决乱码的更多相关文章

  1. 【原创】07. ajax请求,解决sendRedirect 无效

    介绍: 后台基于旧代码用的Filter验证,若 Session过期,则跳转登陆页面 前台框架:EasyUI 问题: 最初后台验证不通过: 1 httpServletResponse.sendRedir ...

  2. Chrome不支持本地Ajax请求,解决办法

    Chrome不支持本地Ajax请求,当我在.html文件中访问.json文件时就会出现这个问题,就是说这个时候不能加载这个.html文件. 解决方式 打开Chrome快捷方式的属性中设置: 右击Chr ...

  3. SpringMVC进行Ajax请求页面显示乱码

    最近在项目的使用过程中发现在springmvc的项目中,使用返回页面的请求方式,数据都能正常显示,但是对于ajax的请求,始终显示乱码. 首先第一种是因为我们在web.xml中配置了spring的字符 ...

  4. 配置Chrome启动参数支持本地AJAX请求,解决XMLHttpRequest cannot load file..,Uncaught NetworkError: Failed to execute 'send' on 'XMLHttpRequest':.. 问题

    直接将本地的HTML文件拖拽到Chrome浏览器中运行时,发送的AJAX请求本地文件,会报跨域错误: 报错的原因是:Chrome默认不支持本地的AJAX请求! 解决问题的办法是:给Chrome浏览器添 ...

  5. JQuery发送ajax请求时中文乱码

    先排除项目故障: 1.web.xml中是否配置了字符拦截器 <filter> <filter-name>encodingFilter</filter-name> & ...

  6. tomcat7 ajax请求服务中文乱码

    在确保请求服务编码格式为utf-8的情况下,确保tomcat的配置 <Connector connectionTimeout="20000" port="8080& ...

  7. Java httpclient请求,解决乱码问题

    public class HttpPostRequestUtil { public HttpPostRequestUtil() { } public static String post(String ...

  8. chrome浏览器本地文件支持ajax请求的解决方法

    .右键chrome的快捷键--->点击属性 .在快捷方式的选项卡的目标里末尾填上如下内容: --allow-file-access-from-files 要关闭所有的chrome打开的网页

  9. 配置Chrome支持本地(file协议)的AJAX请求

    什么问题 WEB开发过程中,很多时候我们都是写一些简单的Demo,并不是开发一个完整项目,此时我们常见的操作是: 新建文件夹 新建需要的文件 在Sublime(或其他编辑器)中完成DEMO的编码 双击 ...

随机推荐

  1. Kubernetes集群初探

    上文我们在一台虚机上演示了Kubernetes基于redis和docker的guestbook留言簿案例,本文我们将通过配置Kubernetes集群的方式继续深入研究.集群组件安装如下配置. IP N ...

  2. linux mysql远程连接

    今天在本地连接linux服务端的mysql始终报错61,谷歌后找到原因: linux的mysql默认是不允许远程连接操作的,在stack上面找到方法:修改mysql配置文件/usr/local/mys ...

  3. hadoop 2.7.2 和 spark1.6 多节点安装

    一共三个节点,在安装完hadoop之后直接安装spark.下载的spark版本是不带hadoop的,注意节点配置 Hadoop multi-nodes Installation Environment ...

  4. iOS中的round ceil floorf表示的含义

    round:如果参数是小数,则求本身的四舍五入. ceil:如果参数是小数,则求最小的整数但不小于本身. floor:如果参数是小数,则求最大的整数但不大于本身.  

  5. HttpClient Get/Post方式调用Http接口

    本节摘要:本节主要分别介绍如何用get方式.post方式向http接口发送数据. preparation 1. 项目环境如下: myeclipse6.5 .tomcat5.0.system:xp.JD ...

  6. php学习笔记

    header("Content-Type:text/html;charset=utf-8");//设置中文请求中文 $host = "localhost";// ...

  7. javascript date picker

    一个简洁的date picker <html><head><meta http-equiv="Content-Type" content=" ...

  8. MSSQL 查询数据库所有表的大小, 有助于删除一些没用的表

    SELECT b.name AS tablename , a.rowcnt AS datacount FROM sysindexes a , sysobjects b WHERE a.id = b.i ...

  9. 关于nginx的1W并发的优化

    我们来看一下图,下面的这张图清晰的表明了nginx优化的一些方法: nginx要响应请求的话,必须要: 1.要建立socket连接 2.是要读本地的文件 所以这就是我们的一个优化的方向: 所以参考照上 ...

  10. C# iis错误配置信息( 500.21 - Internal Server Error )

    新电脑安装完开发环境后,还需要注册framework4.0到IIS.不然会报错: HTTP 错误 500.21 - Internal Server Error 处理程序"Extensionl ...