上创建并保存的cookies的onclick
问题描述:
谁能帮我建立,可以通过检查该链接的用户点击,然后将其重定向到该链接并为它创建一个cookie,因此下一次用户需要用户输入一个cookie功能他们自动获得重定向。上创建并保存的cookies的onclick
谁能告诉我什么我做错了。我想要多个链接并点击每个链接应该创建一个cookie并重定向用户。
任何人都可以提供一个工作的jsfiddle请。
的代码如下,请帮助:
//Html
<a href="" onClick="redirectOne('/home')">something site</a>
<a href="" onClick="redirectTwo('/home')">something2 site</a>
// Javascript
function redirectOne(state)
{
createCookie('state', state, 90);
window.location.href = "www.something1.com" + state;
}
function redirectTwo(state)
{
createCookie('state', state, 90);
window.location.href = "www.something2.com" + state;
}
var cookie = readCookie('state');
if (cookie != null)
{
window.location.href = "www.something.com" + cookie;
}
function createCookie(name,value,days) {
if (days)
{
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function eraseCookie(name) {
createCookie(name,"",-1);
}
答
你的问题是,当你调用这条线在每个功能
createCookie('state', state, 90);
它从onClick事件采取“/家”的价值并将其传递给cookie创建例程。你应该为这两个函数传递'/ home'以外的东西。
<a href="" onClick="redirectOne("www.something1.com")">something site</a>
<a href="" onClick="redirectOne("www.something2.com")">something2 site</a>
// Javascript
function redirectOne(state)
{
createCookie('state', state, 90);
window.location.href = state+'/home';
}
根本不需要redirectTwo功能。
什么是你的代码错误?你有任何错误信息? – fxm 2014-12-19 10:07:44
的问题是,无论什么链接都没有我点击它一直保存“www.somethingOne.com”饼干。即使我点击somethingTwo链接,它仍然可以保存一些cookie,然后我重定向到那里。 – Skywalker 2014-12-19 10:13:38
这是代码给你麻烦吗?我无法理解您的Cookie如何使用。最重要的是,在你的代码片段,他们总是设置为与'redirectOne'相同的值和'redirectTwo' – fxm 2014-12-19 10:19:03