我正在开发一个项目,其中用户被发送到他们在输入中输入的目录名称,如下所示:
function sendanswer(e) {
if (e.keyCode === 13) {
e.preventDefault();
var answer = document.answerarea.input.value;
if (answer) {window.location.href = answer;}
}
}
document.answerarea.input.onkeypress = sendanswer;
这很好用。但现在我希望用户每次访问页面时都能自动重定向到他们指定的目录,但前提是他们在导航到该目录后没有收到 404 错误。我想这可以通过在访问 404 页面时删除 cookie 来实现。
但是重定向到 cookie 的过程是如何工作的呢?
最佳答案
当您从使用中获取输入时,使用以下代码设置 cookie:
function sendanswer(e) {
if (e.keyCode === 13) {
e.preventDefault();
var answer = document.answerarea.input.value;
if (answer) {
window.location.href = answer;
//SET COOKIE WITH NAME redirectPath
document.cookie="redirectPath="+ answer;
}
}
}
现在在您的主页(用户访问您网站的页面)上添加以下调用页面加载:
window.onload=function(){
var kuki = "redirectPath=";//NAME OF COOKIE WE SET
var cookies = document.cookie.split(';');
for(var i=0;i < cookies.length;i++) {
var c = cookies[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(kuki) == 0){
var path = c.substring(kuki.length,c.length);
//MOVE USER TO STORED PATH
document.location.href=path;
}
}
}
更好的方法是在服务器端读取 cookie 并将用户从那里重定向到他们最喜欢的文件夹。
更多引用请查看this回答。
关于javascript - 将用户从输入重定向到 URL,存储在 cookie 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31235996/