How can I check if a checkbox is checked?

I am building a mobile web app with jQuery Mobile and I want to check if a checkbox is checked. Here is my code.

<script type=text/javascript> function validate(){ if (remember.checked == 1){ alert("checked") ; } else { alert("You didn't check it! Let me check it for you.") } }
</script>
<input name="remember" type="checkbox" onclick="validate()" />

But for some reason or another it doesn't execute it.

Please help !

----EDIT----- This is what I have for the moment.

<DIV> <DIV class=ui-grid-g-login> <FORM method=post action=[$=PROBE(266)/]> <P>~DATA_ERROR~</P> <div> <label for="mail">Email:*</label> <input name="mail" type="email" /> </div> <div> <label for="pass">Paswoord:*</label> <input name="pass" type="password" /> </div> <div> <label for="remember">Onthoud mij</label> <input name="remember" type="checkbox" onclick="validate()" /> </div> <P><INPUT class=btn name=submit value=Login type=submit onclick="validate()"></P> </FORM> </DIV>
</DIV><!-- /content -->
<script type=text/javascript>
function validate(){ var remember = document.getElementById('remember'); if (remember.checked){ alert("checked") ; }else{ alert("You didn't check it! Let me check it for you.") }
}
</script>

----EDIT--

Solved it, the problem was that the fieldcontain was also named 'remember'

5

17 Answers

checked is a boolean property, so you can directly use it in an if condition

<script type="text/javascript"> function validate() { if (document.getElementById('remember').checked) { alert("checked"); } else { alert("You didn't check it! Let me check it for you."); } }
</script>
5

Try this:

function validate() { var remember = document.getElementById("remember"); if (remember.checked) { alert("checked"); } else { alert("You didn't check it! Let me check it for you."); }
}

Your script doesn't know what the variable remember is. You need to get the element first using getElementById().

2

This should allow you to check if element with id='remember' is 'checked'

if (document.getElementById('remember').is(':checked')
3

If you are using this form for mobile app then you may use the required attribute html5. you dont want to use any java script validation for this. It should work

<input name="remember" type="checkbox" required="required" />
0
//HTML
<input type="checkbox">
// JavaScript
const someCheckbox = document.getElementById('someID');
someCheckbox.addEventListener('change', e => { if(e.target.checked === true) { console.log("Checkbox is checked - boolean value: ", e.target.checked) }
if(e.target.checked === false) { console.log("Checkbox is not checked - boolean value: ", e.target.checked) }
});

know more

use like this

<script type=text/javascript> function validate(){ if (document.getElementById('remember').checked){ alert("checked") ; } else { alert("You didn't check it! Let me check it for you.") } }
</script>
<input name="remember" type="checkbox" onclick="validate()" />
3

Use this below simple code:

<input type="checkbox">
<a href="#" onclick="check()">click</a>
<button onclick="check()">button</button>
<script> function check() { if (document.getElementById('check').checked) { alert("checked"); } else { alert("Not checked."); } }
</script>

This should work

function validate() { if ($('#remeber').is(':checked')) { alert("checked"); } else { alert("You didn't check it! Let me check it for you."); }
}
1
if (document.getElementById('remember').checked) { alert("checked");
}
else { alert("You didn't check it! Let me check it for you.");
}

I am using this and it works for me with Jquery:

Jquery:

var checkbox = $('[name="remember"]');
if (checkbox.is(':checked'))
{ console.log('The checkbox is checked');
}else
{ console.log('The checkbox is not checked');
}

Is very simple, but work's.

Regards!

remember is undefined … and the checked property is a boolean not a number.

function validate(){ var remember = document.getElementById('remember'); if (remember.checked){ alert("checked") ; }else{ alert("You didn't check it! Let me check it for you.") }
}

The remember variable is undefined. so try this way:

function validate() { var remember = document.getElementById("remember"); if (remember.checked) { alert("checked"); } else { alert("You didn't check it! Let me check it for you."); }
}

You can use this simple and effective code using pure JS and jQuery.

using validate function as onclick attr

function validate(el) { if (el.checked) { alert("checked") } else { alert("unchecked") }
}
<input name="remember" type="checkbox" onclick="validate(this)" />

OR

using pure JS

document.addEventListener("DOMContentLoaded", function(event) { //using pure Js code let chk = document.getElementById("remember"); if (chk.checked) { alert("checked") }else{ alert("unchecked") }
})
<input name="remember" type="checkbox"/>

using jQuery

$(document).ready(function () { //using jQuery code $('#remember').on('change', function (e) { if (e.currentTarget.checked) { alert("checked") } else { alert("unchecked") } })
})
<input name="remember" type="checkbox"/>
<script src=""></script>
1

Use this below simple code:

<input type="checkbox">
<a href="#" onclick="check()">click</a>
<button onclick="check()">
button
</button>
<script> function check() { if (document.getElementById('check').checked) { alert("checked"); } else { alert("You didn't check it! Let me check it for you."); } }
</script>

You can try this:

if ($('#remember').is(':checked')){ alert('checked');
}else{ alert('not checked')
}
0

Try This

<script type="text/javascript">
window.onload = function () { var input = document.querySelector('input[type=checkbox]'); function check() { if (input.checked) { alert("checked"); } else { alert("You didn't check it."); } } input.onchange = check; check();
}
</script>

You can also use JQuery methods to accomplish this:

<script type="text/javascript">
if ($('#remember')[0].checked)
{ alert("checked");
}
</script>

You Might Also Like