Javascript Cookie Code не хранит cookie/ не читает нулевое значение cookie?

Я взял этот код из книги Headfirst Javascript для файлов cookie. Но по некоторым причинам он не работает с моими браузерами. Я в основном использую Chrome и FF, и у меня включены локальные куки в Chrome. Помогите??

<script type="text/javascript">


function checkCookie(){
    var name = eatCookie("yahooEmail");
    if(name)
        document.getElementById("emailVerf").style.visibility="hidden";
    else
        document.getElementById("emailBody").style.visibility="hidden";
}



function writeCookie(name, val, days){

    var expires = "";

    if(days){
        var date = new Date();
        date.setTime(date.getTime + (days * 24 * 60 * 60 * 1000));
        expires = "; expires=" + date.toGMTString();
    }

    document.cookie = name + "=" + val + expires + "; path=/";

}

function eatCookie(val){
    var search = val + "=";
    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(search) == 0)
            return c.substring(search.length, c.length);
    }
    return null;

}

function verEmail(val){

    var regex = "[a-zA-Z0-9][@yahoo.com]";
    var exp = new RegExp(regex);

    if(!exp.test(val)){
        document.getElementById("email").style.color="red";
        alert("Please enter a valid Yahoo email address.");
        }
    else{
        writeCookie("yahooEmail", val, 7);
        document.getElementById("emailVerf").style.visibility="hidden";
        document.getElementById("emailBody").style.visibility="visible";
        }
}

</script>

1 ответ

Вы пишете файл cookie с именем "ayahooEmail", но читаете файл с именем "yahooEmail"

Другие вопросы по тегам