求教一个页面跳转问题

wilaum 2010-04-23 05:29:00
想实现这个功能:


网站主页是地区选择页,


第一次登陆主页选择地区,


之后再登陆就直接跳转第一次选择的地区页







不知表述清楚没有。我感觉要用cookie,但是我对cookie完全茫然,希望高手不吝赐教,小弟感谢万分

...全文
160 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
yujiayou 2010-04-23
  • 打赏
  • 举报
回复
不知怎么实现,顶一下
wilaum 2010-04-23
  • 打赏
  • 举报
回复
谢谢大家,我好想明白一点了,先去试验下
wilaum 2010-04-23
  • 打赏
  • 举报
回复
看来现成的不好找,还是晚上去图书馆找本书学习一下
Mr-Jee 2010-04-23
  • 打赏
  • 举报
回复
这个你可以当做一个对象来对待

即你调用它的方法来set search 等就可以了
wilaum 2010-04-23
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 cj205 的回复:]

如果你的网站没有整合。即是一个独立的站点,那么使用js是没有问题的。danica7773的方法和网上很多的方法都可以做到。
[/Quote]

我也找到了,但就是看不懂cookie咋写的,不知道改哪些地方我可以用
wilaum 2010-04-23
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 danica7773 的回复:]

不好意思,有一个方法写的有问题,改成下面的。

JScript code

cookieMap: function() {
var _map = {};
if(this.isCookie()) {
var _cookie = document.cookie.split(';');
var _le……
[/Quote]


看得一头雾水,如果我要使用大概是更改哪些地方呢,以前从未接触过cookie,刚才看一行google一行
Mr-Jee 2010-04-23
  • 打赏
  • 举报
回复
如果你的网站没有整合。即是一个独立的站点,那么使用js是没有问题的。danica7773的方法和网上很多的方法都可以做到。
打字员 2010-04-23
  • 打赏
  • 举报
回复
不好意思,有一个方法写的有问题,改成下面的。


cookieMap: function() {
var _map = {};
if(this.isCookie()) {
var _cookie = document.cookie.split(';');
var _len = _cookie.length;
if(_cookie.length && _cookie[0] != '') {
var _subItem;
for(var i = 0; i < _len; i++) {
_subItem = _cookie[i].split('=');
_map[decodeURI(_subItem[0].replace(/^\s*|\s*$/g, ''))] = decodeURI(_subItem[1]);
}
}
}
return _map;
},
wilaum 2010-04-23
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 cj205 的回复:]

引用 6 楼 lieri111 的回复:
楼主单单是html的话,那就用cookie,如果有后台,或者jsp那就放到数据库,或者session中,暂时保存

如果是session的话,不能保证用户下次打开。
而且一般情况下,这种用户体验的东西应该放在前台
我很赞同使用IP的方式,不过对于某些挑剔的客户来说,他们会觉得代理或者说非本国用户异地访问时导致的不佳体验
[/Quote]


使用代理的异地访问是个头疼的问题,因为面对的是教育网,很多学生都会使用加速器或者浏览网页时使用内置代理的浏览器,诸如搜狗。

所以觉得还是cookie比较合理,但对此一窍不通
打字员 2010-04-23
  • 打赏
  • 举报
回复
第一次打开主页的时候把选择的地区存在cookie["area"]中。以后每次打开主页的时候都读cookie,看是否存在名称为"area"的cookie,如果有就转到地区页,如果没有就让用户选择然后再次记录到cookie["area"]中。


LZ上网看看cookie的操作,也可以用我写的这个。


/***************************************/
/* title: operate cookie
/* author: danica7773
/**************************************/

var cookieOperate = {
isCookie: function() {
return navigator.cookieEnabled;
},
cookieMap: function() {
var _map = {};
if(this.isCookie()) {
var _cookie = document.cookie.split(';');
var _len = _cookie.length;
var _subItem;
for(var i = 0; i < _len; i++) {
_subItem = _cookie[i].split('=');
_map[decodeURI(_subItem[0].replace(/^\s*|\s*$/g, ''))] = decodeURI

(_subItem[1]);
}
}
return _map;
},
searchCookie: function(key) {
var _map = this.cookieMap();
return (_map[key])? _map[key] : null;
},
/**
/*op = {
/* k: key,
/* d: domain,
/* p: path,
/* }
**/
deleteCookie: function(op) {
var _value = this.searchCookie(op.k);
if(_value) {
var _op = {
v: '',
t: -1
}
for(e in op){
_op[e] = op[e];
}
this.writeCookie(_op);
}
},
/**
/*op = {
/* k: key,
/* v: value,
/* f: true | false, //(cover the old record)
/* s: splitFlag
/* n: 10, //max number
/* t: expires, //seconds
/* d: domain,
/* p: path,
/* }
**/
writeCookie: function(op) {
var _cookie = [];
if(op.k && typeof(op.v) !== 'undefined' && op.v !== null) {
var _v = encodeURI(op.v);
if(!op.f) {
var _s = (op.s)? op.s : '|';
var _n = (op.n)? op.n : 10;
var _old = this.searchCookie(op.k);
if(_old) {
var _arr = _old.split(_s);
var _len = _arr.length;
for(var i = 0; i < _n - 1; i++) {
if(!_arr[i]) {
break;
}
_v += _s + encodeURI(_arr[i]);
}
}
}
_cookie.push(op.k + '=' + _v);
}
if(op.t) {
_cookie.push('expires=' + this.setExpires(op.t));
}
if(op.d) {
_cookie.push('domain=' + op.d);
}
if(op.p) {
_cookie.push('path=' + op.p);
}
document.cookie = _cookie.join(';');
},
setExpires: function(seconds) {
var _d = new Date();
_d.setTime(_d.getTime() + (seconds * 1000));
return _d.toGMTString();
}
}
Mr-Jee 2010-04-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lieri111 的回复:]
楼主单单是html的话,那就用cookie,如果有后台,或者jsp那就放到数据库,或者session中,暂时保存
[/Quote]
如果是session的话,不能保证用户下次打开。
而且一般情况下,这种用户体验的东西应该放在前台
我很赞同使用IP的方式,不过对于某些挑剔的客户来说,他们会觉得代理或者说非本国用户异地访问时导致的不佳体验
wilaum 2010-04-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lieri111 的回复:]

楼主单单是html的话,那就用cookie,如果有后台,或者jsp那就放到数据库,或者session中,暂时保存
[/Quote]


html页面的cookie该怎么写呢,我完全茫然
wilaum 2010-04-23
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 cocoanet 的回复:]

JS也可以读cookie啊,然后跳转。
[/Quote]


是的,我就是这个意思
passself 2010-04-23
  • 打赏
  • 举报
回复
楼主单单是html的话,那就用cookie,如果有后台,或者jsp那就放到数据库,或者session中,暂时保存
cocoanet 2010-04-23
  • 打赏
  • 举报
回复
JS也可以读cookie啊,然后跳转。
wilaum 2010-04-23
  • 打赏
  • 举报
回复
我也想过,但ip实现跳转对我来说更困难一些,而且ip判断不一定准确,如果使用精确ip库,页面执行速度会降低很多
灬上海爽爷 2010-04-23
  • 打赏
  • 举报
回复
获取到用户的IP,你自己帮他做跳转不就好了嘛,为什么要让用户自己选。。
wilaum 2010-04-23
  • 打赏
  • 举报
回复
谢谢提醒
Mr-Jee 2010-04-23
  • 打赏
  • 举报
回复
是的,要用cookie。这个不是在JS里写的 所以建议你还是在你的WEB实用技术的版块问吧。或者可以说下你用的技术

87,909

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧