Не обновляется после установки cookie - PullRequest
1 голос
/ 22 декабря 2011

Можно мне помочь, пожалуйста? Используя Javascript, я устанавливаю cookie, затем обновляю страницу. Мой текущий сломанный код:

var username=getCookie("username");
if (username!=null && username!="")
{
    document.write("Welcome, " + username + "! <br/> <input type='button' value='Click to reset your name!' onclick='setCookie(\"username\",\"\",-1);' onmouseup='window.location.reload(true);'/>");
}
else
{
    username=prompt("Please enter your name:","Nothing is stored on the server.");
    if (username!=null && username!="")
    {
        setCookie("username",username,365);
    }
    window.location.reload(true);
}

Получить cookie:

function getCookie(c_name)
{
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
  {
  x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
  y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
  x=x.replace(/^\s+|\s+$/g,"");
  if (x==c_name)
    {
    return unescape(y);
    }
  }
}

Проблема в остальной части {} первой части кода. Заранее спасибо! :) Я прошу прощения, если мой код или его форматирование неверно. (

1 Ответ

0 голосов
/ 22 декабря 2011

Пожалуйста, мы можем увидеть определение getCookie? Что он возвращает, если cookie не установлен?

Вы смотрели на консоль ошибок JS?

Код переформатирован ниже.

var username=getCookie("username");
if (username!=null && username!="")
{
    document.write("Welcome, " + username + "! <br/>
                    <input type='button' value='Click to reset your name!'             
                        onclick='setCookie(\"username\",\"\",-1);'
                        onmouseup='window.location.reload(true);'/>");
}
else
{
    username=prompt("Please enter your name:","Nothing is stored on the server.");
    if (username!=null && username!="")
    {
        setCookie("username",username,365);
    }
    window.location.reload(true);
}
// This last } is superfluous and may indicate issues with brackets
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...