JavaScript读取中文cookie时的乱码问题的解决方法_javascript技巧
程序员文章站
2022-04-22 19:22:55
...
复制代码 代码如下:
function Get_Cookie(name) {
var start = document.cookie.indexOf(name+…=…);
var len = start+name.length+1;
if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
if (start == -1) return null;
var end = document.cookie.indexOf(…;…,len);
if (end == -1) end = document.cookie.length;
return unescape(document.cookie.substring(len,end));
}
function Set_Cookie(name,value,expires,path,domain,secure) {
expires = expires * 60*60*24*1000;
var today = new Date();
var expires_date = new Date( today.getTime() + (expires) );
var cookieString = name + …=… +escape(value) +
( (expires) ? …;expires=… + expires_date.toGMTString() : ……) +
( (path) ? …;path=… + path : ……) +
( (domain) ? …;domain=… + domain : ……) +
( (secure) ? …;secure… : ……);
document.cookie = cookieString;
}
当cookies中保存有中文信息时,会发生乱码,这样修改下就会解决问题
复制代码 代码如下:
//cookie操作函数
function Get_Cookie(name) {
var start = document.cookie.indexOf(name+…=…);
var len = start+name.length+1;
if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
if (start == -1) return null;
var end = document.cookie.indexOf(…;…,len);
if (end == -1) end = document.cookie.length;
return decodeURI(document.cookie.substring(len,end));
}
function Set_Cookie(name,value,expires,path,domain,secure) {
expires = expires * 60*60*24*1000;
var today = new Date();
var expires_date = new Date( today.getTime() + (expires) );
var cookieString = name + …=… +escape(value) +
( (expires) ? …;expires=… + expires_date.toGMTString() : ……) +
( (path) ? …;path=… + path : ……) +
( (domain) ? …;domain=… + domain : ……) +
( (secure) ? …;secure… : ……);
document.cookie = cookieString;
}
主要是把unescape改成了decodeURI。
推荐阅读
-
Javascript的encodeURIComponent()格式化中文字符后在ASP.NET页面中乱码问题的解决
-
JSP MySQL插入数据时出现中文乱码问题的解决方法
-
ArcGIS API for javascript如何解决打印输出的中文为乱码问题?
-
跨浏览器PHP下载文件名中的中文乱码问题解决方法_php技巧
-
XMLHTTP 乱码的解决方法(UTF8,GB2312 编码 解码)_javascript技巧
-
javascript中onmouse事件在div中失效问题的解决方法_javascript技巧
-
火狐下input焦点无法重复获取问题的解决方法_javascript技巧
-
跨浏览器PHP下载文件名中的中文乱码问题解决方法_php技巧
-
浏览器解析js生成的html出现样式问题的解决方法_javascript技巧
-
IE中JS跳转丢失referrer问题的2个解决方法_javascript技巧