jQuery – validar grupo de checkbox con jQuery Validate

Existe un pligin llamado Validate que puede utilizarse para validar un formulario. Seguro que muchos de vosotros ya lo sabréis. Pero cómo validamos que en un formulario, al menos se seleccione un checkbox de un grupo de ellos. Empecemos con el artículo jQuery – validar grupo de checkbox con jQuery Validate.

Para empezar, debéis visitar enlace de Validate, la librería que nos permitirá validar el formulario:

Como sabréis, debéis tener la librería cargada desde el header o el footer de la página:

<script src="https://www.mipagina.com/librerias/jquery.min.js"></script> 
<script src="https://www.mipagina.com/librerias/jquery.validate.min.js"></script>

En el formulario crearéis los checkbox del siguiente modo:

<form id="formposicionjugadores" action="/posicionjugadores.php" method="post">
<ul>
<li><input name='filtros[]' type="checkbox" value="rubios"> Delantero </li>
<li><input name='filtros[]' type="checkbox" value="medio"> Medio </li>
<li><input name='filtros[]' type="checkbox" value="defensa" </li>
<li><input name='filtros[]' type="checkbox" value="portero" </li>
</ul>
...
<div id="consolaerror" class="consola"> </div>
</form>

Aquí debéis fijaros que el nombre de los checkbox es filtros[]. De esta manera creamos un grupo de checkbox que con Validate podremos tratar.

Una vez tenemos los checkbox como conjunto, ahora ponemos el código Javascript que hará que nos valide que hayamos seleccionado, al menos uno de ellos. Lo haremos gracias a Validate:

<script>
$(document).ready(function () {
  $("#formposicionjugadores").validate({
    rules: {
      "filtros[]": {required: true}
    },
    messages: {
      "filtros[]": "Debe escoger un sector obligatoriamente."
    },
    errorLabelContainer: $('#consolaerror')
  });
});
</script>

Como podéis ver, se trata el campo filtros[0] que corresponde al grupo de checkbox, y como regla ponemos que sea required (requerido). Si no se selecciona alguno de ellos, muestra el mensaje correspondiente, en el div con id consolaerror.

Espero que os sea de ayuda el artículo jQuery – validar grupo de checkbox con jQuery Validate.


Más información