Validate at least one checkbox checked
jquery validation
by Rich Costello
HTML
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.10.0/jquery.validate.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.10.0/additional-methods.js"></script>
<form id="myform">
<div>
<input type="checkbox" name="demo[]" value="colorado" />test0
<input type="checkbox" name="demo[]" value="michigan" />test1
<input type="checkbox" name="demo[]" value="colorado" />test2
<input type="checkbox" name="demo[]" value="michigan" />test3
<input type="checkbox" name="demo[]" value="colorado" />test4
<input type="checkbox" name="demo[]" value="michigan" />test5
</div>
<div>
<input type="checkbox" name="service.area" value="colorado" />colorado
<input type="checkbox" name="service.area" value="michigan" />michigan
</div>
<div>
<input type="checkbox" name="fav[]" value="skiing" />skiing
<input type="checkbox" name="fav[]" value="volley" />volley
</div>
<div>
<input type="submit" />
</div>
</form>
<a href="http://docs.jquery.com/Plugins/Validation" target="_blank">Validation Documentation</a>
CSS
a {
display: block;
position: absolute;
bottom: 0;
}
.error {
color: red;
}
#myform {
margin: 10px;
}
#myform > div {
margin-top: 10px;
}
JavaScript
$(document).ready(function () {
$('#myform').validate({
rules: {
'service.area': {
required: true
},
'fav[]': {
required: true
},
'demo[]': {
required: true
}
},
errorPlacement: function (error, element) {
//error.insertBefore(element);
error.insertAfter(element.closest('div'));
},
submitHandler: function (form) { // for demo
alert('valid form');
return false;
}
});
});