verificacion tipos opcion hacer grupo ejemplos ejemplo como casillas botones html css html5 checkbox radio-button

tipos - radio button html ejemplo



Validación de casillas de verificación en HTML (5)

Tengo un formulario, hay 4 opciones (pueden ser casillas de verificación o radio).

Quiero seleccionar múltiples opciones pero una es obligatoria.

Sé que es posible en JS / jQuery pero quiero una solución base HTML / CSS.


Luego de la respuesta de @Rick Hitchcock, creo que querrá mostrarle al usuario el botón de envío, pero se desactivará hasta que se marque una de las casillas de verificación.

Si es así, puede usar pointer-events (en todos los navegadores modernos: http://caniuse.com/#feat=pointer-events ) de esta manera:

input[type="Submit"] { opacity:0.5; pointer-events:none; /* animation added for fancy ;) */ transition:all .2s ease; } input:checked ~ .button-wrapper input[type="Submit"] { opacity:1; pointer-events:all; } .button-wrapper { position:relative; display:inline-block; } .button-wrapper:before { content:""; position:absolute; top:0; left:0; width:100%; height:100%; z-index:1; } input:checked ~ .button-wrapper:before { display:none; }

<input id="c1" type="checkbox"><label for="c1">First</label><br> <input id="c2" type="checkbox"><label for="c2">Second</label><br> <input id="c3" type="checkbox"><label for="c3">Third</label><br> <input id="c4" type="checkbox"><label for="c4">Fourth</label><br> <div class="button-wrapper"> <input type="Submit" tabindex="-1"> </div>

Editar Se agregó una "máscara" en .button-wrapper:before que funcione en los navegadores antiguos.


Para poder verificar múltiples entradas, deben ser casillas de verificación. ( Podrían ser botones de radio con nombres diferentes, pero no podrá desmarcarlos una vez que los haya seleccionado).

Por lo tanto, use las casillas de verificación y muestre el botón Enviar solo si se marca alguno, usando el selector general de hermanos (~):

input[type="Submit"] { display: none; } input:checked ~ input[type="Submit"] { display: inline; }

<input id="c1" type="checkbox"><label for="c1">First</label><br> <input id="c2" type="checkbox"><label for="c2">Second</label><br> <input id="c3" type="checkbox"><label for="c3">Third</label><br> <input id="c4" type="checkbox"><label for="c4">Fourth</label><br> <input type="Submit">

Si desea que aparezca un botón de envío deshabilitado, agregue un segundo botón que esté deshabilitado.

Cuando no se hace clic en ninguna entrada, muestra solo el botón de envío deshabilitado. Cuando se hace clic en una o más entradas, muestra solo el botón de envío habilitado:

input[type="Submit"]:not([disabled]) { display: none; } input:checked ~ input[type="Submit"]:not([disabled]) { display: inline; } input:checked ~ input[disabled] { display: none; }

<input id="c1" type="checkbox"><label for="c1">First</label><br> <input id="c2" type="checkbox"><label for="c2">Second</label><br> <input id="c3" type="checkbox"><label for="c3">Third</label><br> <input id="c4" type="checkbox"><label for="c4">Fourth</label><br> <input type="Submit" disabled> <input type="Submit">


Prueba esto:

<input id="c3" type="checkbox" required><label for="c3">Third</label><br> <input id="c4" type="checkbox" required><label for="c4">Fourth</label><br>

O puedes intentar esto usando jquery para validar una casilla de verificación html:

<!doctype html> <html> <head> <meta charset="utf-8"> <title>Makes "field" always required. Nothing and blanks are invalid. </title> <link rel="stylesheet" href="http://jqueryvalidation.org/files/demo/site-demos.css"> </head> <body> <form id="myform"> <label for="field">Required: </label> <input type="text" class="left" id="field" name="field"> <br/> <input type="submit" value="Validate!"> </form> <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script> <script src="http://jqueryvalidation.org/files/dist/jquery.validate.min.js"> </script> <script src="http://jqueryvalidation.org/files/dist/additional- methods.min.js"></script> <script> // just for the demos, avoids form submit jQuery.validator.setDefaults({ debug: true, success: "valid" }); $( "#myform" ).validate({ rules: { field: { required: true } } }); </script> </body> </html>

required es la forma en que html valida las cosas


Puede utilizar lo siguiente para el que es obligatorio.

<input type="radio" name="name" required>

El que no se requiera no se probará si está marcado o no.


Puedes hacer esto en html5 usando el atributo required Like

<input type="checkbox" required name="your_checkbox_name">

Esto le indica al navegador que el formulario no debe enviarse sin que se marque la casilla de verificación. Aunque recomiendo java-script ya que no todos los navegadores podrán reconocerlo.

O

Si desea detectar si al menos una casilla de verificación está seleccionada como lo sugiere @RickHitchcock en los comentarios , puede usar

span { display: inline; color: red; } input[type="Submit"], input:checked ~ span { display: none; } input:checked ~ input[type="Submit"] { display: inline; }

<form action="#" method="post"> <input type="checkbox" />Checkbox 1 <br /> <input type="checkbox" />Checkbox 1 <br /> <input type="checkbox" />Checkbox 1 <br /> <input type="submit" value="Submit" /><span>! Please check at least one checkbox</span> </form>