简体   繁体   中英

javascript check a box with value

I am trying to check boxes in JS. I wan't to only check when the value is equal to 0, if not don't check it. my code :

document.onreadystatechange = function check(e)
{
    if (document.readyState === 'complete')
    {           
        var inputElements = document.getElementsByTagName("input");
        for(var i=0; i < inputElements.length; ++i)
        {               
            if(document.getElementsByTagName("input")[i].value == "1")
            {
              document.getElementById("date").checked = false;
            }        
        }
    }
}

But it doesn't work. Can you help me?

thanks

What you are doing is, if the checkboxes have value of 1 , then you are checking it. Make this change in the code and it should work. Also, you need to check if you are doing this on a checkbox and not on a radio or text:

if(document.getElementsByTagName("input")[i].value == 0 && 
   document.getElementsByTagName("input")[i].getAttribute("type") == "checkbox")
{
  document.getElementById("date").checked = true;
}
var eles = document.querySelectorAll("input[type='checkbox']");
var len = eles.length,
    i = 0,
    flag = true;

for (; i < len; i++) {
    if (eles[i].value === "1") {
        flag = false;
        return;
    }
}

if (flag) document.getElementById('date').checked = true;

If the value ( 0 or 1 ) is of an <input type='text'> , then change document.querySelectorAll("input[type='checkbox']"); to document.querySelectorAll("input[type='text']");

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM