JQuery AJAX提交中文出现乱码的解决方案
客户端:
1.在JS里面把要提交的数据用escape函数编码;
2.ajax提交方法加上字符集参数,如:contentType: "application/x-www-form-urlencoded; charset=gb2312"。
示例如下:
var name = escape($('#txtName').val()); $.ajax({ url: "/ControllerName/ActionName/", data: { name : name }, cache: false, contentType: "application/x-www-form-urlencoded; charset=gb2312", success: function (html) { }, complete: function () { } });
注:字符集根据实际情况修改,要保持和Web.Config文件中globalization节点配置的字符集一致。
服务器端:
在C#中用Server.UrlDecode 解码;