Home > database >  How do I get the value of checkbox?
How do I get the value of checkbox?

Time:06-10

HTML :

<input type="checkbox" aria-checked="false"  value="" data-spm-anchor-id="a800.io">

My java script : ( i want to click this checkbox if it is not checked ,but this does not work )

var z = document.getElementsByClassName('cloud-private'); 
if (z[0].aria-checked=='false'){ 
    z[0].click(); 
}

CodePudding user response:

Should not be using aria-checked here in this way. Should be using the checked attribute as is shown in the checkbox spec on MDN.

let cloudPrivateCbxs = document.querySelectorAll('.cloud-private');

if (cloudPrivateCbxs && !cloudPrivateCbxs[0].checked) { 
    cloudPrivateCbxs[0].click();
}

Here I used a useful variable names (never use single letter variable names except for simple counters like those in for loops), used querySelectorAll instead of getElementsByClassName, then I first check if the variable contains anything, then I simply check the checked attribute to see if it returns false. It is returning a boolean so I can use the logical NOT operator ! rather than check directly if it is equal to false.

CodePudding user response:

You can use querySelector to find the element with that class, and that aria-checked attribute. Then click it. Just make sure you spell things correctly (aria, not area, for example).

const selector = '.cloud-private[aria-checked="false"]';
const z = document.querySelector(selector);

// If the element exists, check it
z && z.click();
<input type="checkbox" aria-checked="false" >

  • Related