js获取cookie提取用户名asp.net+html
2024-08-28 05:38:18
JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的。 而cookie是运行在客户端的,所以可以用JS来设置cookie. 假设有这样一种情况,在某个用例流程中,由A页面跳至B页面,若在A页面中采用JS用变量temp保存了某一变量的值,在B页面的时候,同样需要使用JS来引用temp的变量值,对于JS中的全局变量或者静态变量的生命周期是有限的,当发生页面跳转或者页面关闭的时候,这些变量的值会重新载入,即没有达到保存的效果。解决这个问题的最好的方案是采用cookie来保存该变量的值,那么如何来设置和读取cookie呢? 首先需要稍微了解一下cookie的结构,简单地说:cookie是以键值对的形式保存的,即key=value的格式。各个cookie之间一般是以“;”分隔。 JS设置cookie: 假设在A页面中要保存变量username的值("jack")到cookie中,key值为name,则相应的JS代码为: document.cookie="name="+username; JS读取cookie: 假设cookie中存储的内容为:name=jack;password=123
var cookie=document.cookie;
console.log(cookie);
这两句是获全部信息,账户和密码!(主页面写)
------------------------------------------------------------------------------------------- 则在B页面中获取变量username的值的JS代码如下: 字符串的分割要按照自己的实际情况: 我的是 "&" "=", 数组下标也是按照自己的修改 []
var username=document.cookie.split("&")[1].split("=")[1];
console.log(username);
我直接使用这2句就获取到了登陆界面(asp.net)的用户名到 主页面上(html); ****************************************************************************************************
//JS操作cookies方法! //写cookies function setCookie(name,value)
{
var Days = ;
var exp = new Date();
exp.setTime(exp.getTime() + Days****);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
} //读取cookies
function getCookie(name)
{
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)"); if(arr=document.cookie.match(reg)) return unescape(arr[]);
else
return null;
} //删除cookies
function delCookie(name)
{
var exp = new Date();
exp.setTime(exp.getTime() - );
var cval=getCookie(name);
if(cval!=null)
document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}
//使用示例
setCookie("name","hayden");
alert(getCookie("name")); //如果需要设定自定义过期时间
//那么把上面的setCookie 函数换成下面两个函数就ok; //程序代码
function setCookie(name,value,time)
{
var strsec = getsec(time);
var exp = new Date();
exp.setTime(exp.getTime() + strsec*);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
function getsec(str)
{
alert(str);
var str1=str.substring(,str.length)*;
var str2=str.substring(,);
if (str2=="s")
{
return str1*;
}
else if (str2=="h")
{
return str1***;
}
else if (str2=="d")
{
return str1****;
}
}
//这是有设定过期时间的使用示例:
//s20是代表20秒
//h是指小时,如12小时则是:h12
//d是天数,30天则:d30 setCookie("name","hayden","s20");
最新文章
- SpringMVC入门案例及请求流程图(关于处理器或视图解析器或处理器映射器等的初步配置)
- T-SQL:毕业生出门需知系列(二)
- 【java基础学习】IO流
- Autumn is a second spring when every leaf is a flower.
- 解决Dialog 消失,输入法不消失的问题
- wp 处理方法
- Umbraco Form需要引用些客户端dependencies (jquery)
- SQL Server 2008启用sa账户
- js控件位置
- Java集合源码分析(三)Vevtor和Stack
- 选项卡js版封装
- Python-函数小结
- SQL语句原理解析(原创)
- 【视频】使用ASP.NET Core开发GraphQL服务
- 【Python】This inspection detects names that should resolve but don't. Due to dynamic dispatch and duck
- .Net Core文件上传
- Java中判断对象是否为空的方法
- thinkcmf 忘记后台登陆密码的解决办法
- MT【228】整数解的个数
- centos6.5环境下zookeeper-3.4.6集群环境部署及单机部署详解