最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

JavaScript读取中文cookie时的乱码问题的解决方法_javascript技巧

来源:动视网 责编:小采 时间:2020-11-27 20:44:49
文档

JavaScript读取中文cookie时的乱码问题的解决方法_javascript技巧

JavaScript读取中文cookie时的乱码问题的解决方法_javascript技巧: 代码如下: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)
推荐度:
导读JavaScript读取中文cookie时的乱码问题的解决方法_javascript技巧: 代码如下: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)


代码如下:
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读取中文cookie时的乱码问题的解决方法_javascript技巧

JavaScript读取中文cookie时的乱码问题的解决方法_javascript技巧: 代码如下: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)
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top