JQuery: Marcar e desmarcar todos checkboxes

by Tiago Agostinho

HTML

<form action="" name="form" method="post">
  <p><input type="checkbox" id="checkTodos" name="checkTodos"> Selecionar Todos</p>

  <p><input type="checkbox" value="1"> Item 1</p>
  <p><input type="checkbox" value="2"> Item 2</p>
  <p><input type="checkbox" value="3"> Item 3</p>
  <p><input type="checkbox" value="4"> Item 4</p>
</form>

JavaScript

$("#checkTodos__").change(function () {
    $("input:checkbox").prop('checked', $(this).prop("checked"));
});

$("#checkTodos__").click(function(){
    $('input:checkbox').not(this).prop('checked', this.checked);
});

var checkTodos = $("#checkTodos");
checkTodos.click(function () {
  if ( $(this).is(':checked') ){
    $('input:checkbox').prop("checked", true);
  }else{
    $('input:checkbox').prop("checked", false);
  }
});