我有一个简单的html页面和一个js脚本: HTML页面:
<body>
<input type="text" id = "content">
<button type="button" id="btn"> Save </button>
</body>
使用Javascript:
$(document).ready( function(){
var cook = $.cookie('theName', { path: '/'});
if ( cook )
alert(cook);
$('#btn').click(function(){
var theName = $('#content').val();
alert(v.val());
$.cookie('theName', theName, { path: '/', expires: 7 });
alert("Cookie done");
});
});
库:
<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"> </script>
<script type="text/javascript" src = "https://raw.github.com/carhartl/jquery-cookie/master/jquery.cookie.js"> </script>
它应该保存我的名字,当我点击刷新以显示我的名字。唯一的问题是当我尝试读取cookie时,而不是名称显示%5Bobject%20Object%5D。
谢谢。
答案 0 :(得分:5)
做的:
$(document).ready( function(){
var cook = $.cookie('theName'); //get from cookie if exists
if ( cook )
alert(cook);
$('#but').click(function(){
var theName = $('#content').val();
alert(theName);
$.cookie('theName', theName, { expires: 7, path: '/' }); //set the cookie
alert("Cookie done");
});
});
<强>更新强>
尝试添加:
$.cookie.raw = true;
答案 1 :(得分:3)
var cook = $.cookie('theName', { path: '/'});
这会使用{ path: '/'}
的字符串表示覆盖cookie。
要实际检索现有Cookie,只需传递名称:
var cook = $.cookie('theName');
无论如何都没有必要通过这条路径 - 如果你在设置cookie的路径之外,根本就没有得到它。
答案 2 :(得分:0)
试试这个。
<!DOCTYPE html>
<html>
<head>
<script>
function getCookie(c_name)
{
var c_value = document.cookie;
var c_start = c_value.indexOf(" " + c_name + "=");
if (c_start == -1)
{
c_start = c_value.indexOf(c_name + "=");
}
if (c_start == -1)
{
c_value = null;
}
else
{
c_start = c_value.indexOf("=", c_start) + 1;
var c_end = c_value.indexOf(";", c_start);
if (c_end == -1)
{
c_end = c_value.length;
}
c_value = unescape(c_value.substring(c_start,c_end));
}
return c_value;
}
function setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
}
function checkCookie()
{
var username=getCookie("username");
if (username!=null && username!="")
{
alert("Welcome again " + username);
}
else
{
username=prompt("Please enter your name:","");
if (username!=null && username!="")
{
setCookie("username",username,365);
}
}
}
</script>
</head>
<body onload="checkCookie()">
</body>
</html>
希望这有帮助。
来源:Here