关于js读取cookie
我想在页面加载的时候读取cookie,如果有这个cook就跳转到另一个页面,没有就停留在这个页面,怎样用js实现这种效果。麻烦哪位高手指点一下,谢谢了。...
我想在页面加载的时候读取cookie,如果有这个cook就跳转到另一个页面,没有就停留在这个页面,怎样用js实现这种效果。
麻烦哪位高手指点一下,谢谢了。 展开
麻烦哪位高手指点一下,谢谢了。 展开
4个回答
展开全部
window.onload = function GetCookie() {
var CookieStr = document.cookie;
//获取你写的cookie【cookie内容如:CookieInfo=Name=GTweb&Version=2.0】
var GetName = CookieStr.indexOf("Name") + 5; //获取到cookie中 Name= 的位置
var mark = CookieStr.indexOf("&"); //获取到cookie中符号的&的位置
if (CookieStr.substring(GetName, mark) != "GTweb") {
//判断cookie中"Name="和"&"之间的字符串是否等于GTweb,如果不等于则跳转到百度的首页,等于那就没任何操作
window.location = "http://www.baidu.com";
}
}
var CookieStr = document.cookie;
//获取你写的cookie【cookie内容如:CookieInfo=Name=GTweb&Version=2.0】
var GetName = CookieStr.indexOf("Name") + 5; //获取到cookie中 Name= 的位置
var mark = CookieStr.indexOf("&"); //获取到cookie中符号的&的位置
if (CookieStr.substring(GetName, mark) != "GTweb") {
//判断cookie中"Name="和"&"之间的字符串是否等于GTweb,如果不等于则跳转到百度的首页,等于那就没任何操作
window.location = "http://www.baidu.com";
}
}
展开全部
在.net里面,写到客户端的时候先把Cookies的值 UrlEncode一下
在js里面读出来的时候,先用 unescape 反解码一下
---------.NET
System.Web.HttpCookie cUName = new System.Web.HttpCookie("userName", Server.UrlEncode(user.username));
---------JS
userId=unescape(arr[1]);
-----------
Server是个服务器对象。
如果你不在Page里面使用的话,可以用
System.Web.HttpUnility.UrlEncode 来代替
至于那个英文的,因为英文本身就不存在编码问题。
关于编码和解码的问题,不妨多尝试尝试。必要时手动看一下Cookies里面的内容判断是哪个阶段出的问题。
在js里面读出来的时候,先用 unescape 反解码一下
---------.NET
System.Web.HttpCookie cUName = new System.Web.HttpCookie("userName", Server.UrlEncode(user.username));
---------JS
userId=unescape(arr[1]);
-----------
Server是个服务器对象。
如果你不在Page里面使用的话,可以用
System.Web.HttpUnility.UrlEncode 来代替
至于那个英文的,因为英文本身就不存在编码问题。
关于编码和解码的问题,不妨多尝试尝试。必要时手动看一下Cookies里面的内容判断是哪个阶段出的问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
function setCookie(name, value, expire) {
window.document.cookie = name + "=" + escape(value) + ((expire == null) ? "" : ("; expires=" + expire.toGMTString()));
}
function getCookie(Name) {
var search = Name + "=";
if (window.document.cookie.length > 0) { // if there are any cookies
offset = window.document.cookie.indexOf(search);
if (offset != -1) { // if cookie exists
offset += search.length;
// set index of beginning of value
end = window.document.cookie.indexOf(";", offset)
// set index of end of cookie value
if (end == -1)
end = window.document.cookie.length;
return unescape(window.document.cookie.substring(offset, end));
}
}
return null;
}
function register(name) {
var today = new Date();
var expires = new Date();
expires.setTime(today.getTime() + 1000 * 60 * 60 * 2);
setCookie("ItDoor", name, expires);
}
function openWin(URL) {
var cookie = getCookie("ItDoor");
if (cookie != null) {
return;
}
window.location.href = URL;
}
window.document.cookie = name + "=" + escape(value) + ((expire == null) ? "" : ("; expires=" + expire.toGMTString()));
}
function getCookie(Name) {
var search = Name + "=";
if (window.document.cookie.length > 0) { // if there are any cookies
offset = window.document.cookie.indexOf(search);
if (offset != -1) { // if cookie exists
offset += search.length;
// set index of beginning of value
end = window.document.cookie.indexOf(";", offset)
// set index of end of cookie value
if (end == -1)
end = window.document.cookie.length;
return unescape(window.document.cookie.substring(offset, end));
}
}
return null;
}
function register(name) {
var today = new Date();
var expires = new Date();
expires.setTime(today.getTime() + 1000 * 60 * 60 * 2);
setCookie("ItDoor", name, expires);
}
function openWin(URL) {
var cookie = getCookie("ItDoor");
if (cookie != null) {
return;
}
window.location.href = URL;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
<title>cookie处理函数练习(为我所写,非我所想:改善面向对象)</title>
<script language="JavaScript" type="text/javascript">
function addCookie(objName,objValue,objHours){//添加cookie
var str = objName + "=" + escape(objValue);
if(objHours > 0){//为0时不设定过期时间,浏览器关闭时cookie自动消失
var date = new Date();
var ms = objHours*3600*1000;
date.setTime(date.getTime() + ms);
str += "; expires=" + date.toGMTString();
}
document.cookie = str;
alert("添加cookie成功");
}
function getCookie(objName){//获取指定名称的cookie的值
var arrStr = document.cookie.split("; ");
for(var i = 0;i < arrStr.length;i ++){
var temp = arrStr[i].split("=");
if(temp[0] == objName) return unescape(temp[1]);
}
}
function delCookie(name){//为了删除指定名称的cookie,可以将其过期时间设定为一个过去的时间
var date = new Date();
date.setTime(date.getTime() - 10000);
document.cookie = name + "=a; expires=" + date.toGMTString();
}
function allCookie(){//读取所有保存的cookie字符串
var str = document.cookie;
if(str == ""){
str = "没有保存任何cookie";
}
alert(str);
}
function $(m,n){
return document.forms[m].elements[n].value;
}
function add_(){
var cookie_name = $("myform","cookie_name");
var cookie_value = $("myform","cookie_value");
var cookie_expireHours = $("myform","cookie_expiresHours");
addCookie(cookie_name,cookie_value,cookie_expireHours);
}
function get_(){
var cookie_name = $("myform","cookie_name");
var cookie_value = getCookie(cookie_name);
alert(cookie_value);
}
function del_(){
var cookie_name = $("myform","cookie_name");
delCookie(cookie_name);
alert("删除成功");
}
</script>
</head>
<body>
<form name="myform">
<div><label for="cookie_name">名称</label><input type="text" name="cookie_name" /></div>
<div><label for="cookie_value">值</lable><input type="text" name="cookie_value" /></div>
<div><label for="cookie_expireHours">多少个小时过期</lable><input type="text" name="cookie_expiresHours" /></div>
<div>
<input type="button" value="添加该cookie" onclick="add_()" />
<input type="button" value="读取所有cookie" onclick="allCookie()" />
<input type="button" value="读取该名称cookie" onclick="get_()" />
<input type="button" value="删除该名称cookie" onclick="del_()" />
</div>
</form>
<hr />
</body>
</html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
<title>cookie处理函数练习(为我所写,非我所想:改善面向对象)</title>
<script language="JavaScript" type="text/javascript">
function addCookie(objName,objValue,objHours){//添加cookie
var str = objName + "=" + escape(objValue);
if(objHours > 0){//为0时不设定过期时间,浏览器关闭时cookie自动消失
var date = new Date();
var ms = objHours*3600*1000;
date.setTime(date.getTime() + ms);
str += "; expires=" + date.toGMTString();
}
document.cookie = str;
alert("添加cookie成功");
}
function getCookie(objName){//获取指定名称的cookie的值
var arrStr = document.cookie.split("; ");
for(var i = 0;i < arrStr.length;i ++){
var temp = arrStr[i].split("=");
if(temp[0] == objName) return unescape(temp[1]);
}
}
function delCookie(name){//为了删除指定名称的cookie,可以将其过期时间设定为一个过去的时间
var date = new Date();
date.setTime(date.getTime() - 10000);
document.cookie = name + "=a; expires=" + date.toGMTString();
}
function allCookie(){//读取所有保存的cookie字符串
var str = document.cookie;
if(str == ""){
str = "没有保存任何cookie";
}
alert(str);
}
function $(m,n){
return document.forms[m].elements[n].value;
}
function add_(){
var cookie_name = $("myform","cookie_name");
var cookie_value = $("myform","cookie_value");
var cookie_expireHours = $("myform","cookie_expiresHours");
addCookie(cookie_name,cookie_value,cookie_expireHours);
}
function get_(){
var cookie_name = $("myform","cookie_name");
var cookie_value = getCookie(cookie_name);
alert(cookie_value);
}
function del_(){
var cookie_name = $("myform","cookie_name");
delCookie(cookie_name);
alert("删除成功");
}
</script>
</head>
<body>
<form name="myform">
<div><label for="cookie_name">名称</label><input type="text" name="cookie_name" /></div>
<div><label for="cookie_value">值</lable><input type="text" name="cookie_value" /></div>
<div><label for="cookie_expireHours">多少个小时过期</lable><input type="text" name="cookie_expiresHours" /></div>
<div>
<input type="button" value="添加该cookie" onclick="add_()" />
<input type="button" value="读取所有cookie" onclick="allCookie()" />
<input type="button" value="读取该名称cookie" onclick="get_()" />
<input type="button" value="删除该名称cookie" onclick="del_()" />
</div>
</form>
<hr />
</body>
</html>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询