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>