mardi 19 avril 2016

Checkbox isn't checking to the correct value

I have what should be simple code, but for some reason I'm not getting what is wrong with the logic for setting the checkbox properly. I'm using local storage so that the checked state is persistent among sessions.

Here is my code. What is happening is for some reason even though the console.log prints out false when it should be false, or true when it should be true, either way the checkbox ends up being checked.

var checkboxElement = document.getElementById("checkbox").getElementsByTagName('input')[0]

    checkboxElement.addEventListener('click', function() {
        console.log(checkboxElement.checked)
        if (localStorage != undefined) {
            localStorage.setItem("checkbox", checkboxElement.checked)
        }
    });

    if(localStorage != undefined)
    {
        console.log("Local storage supported.");

        //set defaults
        if (localStorage.getItem("checkbox") == undefined) {
            localStorage.setItem("checkbox", false)
        }

        var isChecked = localStorage.getItem("checkbox")
        checkboxElement.checked = isChecked
        console.log(isChecked)
    }




Aucun commentaire:

Enregistrer un commentaire