这个问题仍是由于IE浏览器是国外产品,人家交流的主要语言是英语,中文不识别。浏览器
直接上代码,亲测无误.post
1 //判断是不是IE浏览器 2 function isIE() { 3 var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 4 var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器 5 if (isIE) { 6 return "1"; 7 } 8 else { 9 return "-1"; 10 } 11 } //编码 12 var str="中午好啊!"; 13 var parameter = ""; 14 if (isIE) { 15 parameter = encodeURI(encodeURI(str)); 16 } else { 17 parameter = str; 18 }
$.post('@Url.Action("....")?parameter =' + parameter, function (data) {
....
});
1 if (Request.Browser.Type.StartsWith("InternetExplorer"))//若是是IE浏览器,传中文进来会乱码,因此要前台先编码,后台再解码还原 2 { 3 //这个就是解码了 4 ReimburseCategory = System.Web.HttpUtility.UrlDecode(str); 5 }