TL; DR: establece el required
atributo para al menos una entrada del grupo de radio.
La configuración required
para todas las entradas es más clara, pero no necesaria (a menos que genere dinámicamente botones de radio).
Para agrupar botones de radio, todos deben tener el mismo name
valor. Esto permite seleccionar solo uno a la vez y se aplica required
a todo el grupo.
<form>
Select Gender:<br>
<label>
<input type="radio" name="gender" value="male" required>
Male
</label><br>
<label>
<input type="radio" name="gender" value="female">
Female
</label><br>
<label>
<input type="radio" name="gender" value="other">
Other
</label><br>
<input type="submit">
</form>
También tome nota de:
Para evitar confusiones sobre si se requiere o no un grupo de botones de radio, se alienta a los autores a especificar el atributo en todos los botones de radio de un grupo. De hecho, en general, se alienta a los autores a evitar tener grupos de botones de radio que no tengan controles inicialmente controlados en primer lugar, ya que este es un estado al que el usuario no puede regresar y, por lo tanto, generalmente se considera una interfaz de usuario deficiente.
Fuente
Puede usar este fragmento de código ...
Especifique la palabra clave " requerida " en una de las declaraciones de selección . Si desea cambiar la forma predeterminada de su apariencia. Puedes seguir estos pasos. Esto es solo para información adicional si tiene alguna intención de modificar el comportamiento predeterminado.
Agregue lo siguiente en su
.css
archivo.Para obtener más información, puede consultar la siguiente URL.
https://css-tricks.com/almanac/selectors/r/required/
fuente
Si sus botones de radio se han personalizado, por ejemplo, el icono original del botón de radio se ha ocultado a través de css
display:none
para que pueda crear su propio botón de radio, entonces es posible que reciba el error.La forma de solucionarlo es reemplazarlo
display:none
conopacity:0
fuente
display:none
. Eso ya ha sido respondido aquí: stackoverflow.com/questions/49687229/…Aquí hay una implementación muy básica pero moderna de los botones de radio necesarios con validación HTML5 nativa:
Aunque soy un gran admirador del enfoque minimalista del uso de la validación HTML5 nativa, es posible que desee reemplazarlo con la validación de Javascript a largo plazo. La validación de Javascript le da mucho más control sobre el proceso de validación y le permite establecer clases reales (en lugar de pseudo clases) para mejorar el estilo de los campos (in) válidos. Esta validación HTML5 nativa puede ser su alternativa en caso de Javascript roto (o falta de). Puede encontrar un ejemplo de eso aquí , junto con algunas otras sugerencias sobre cómo crear formas mejores , inspiradas en Andrew Cole .
fuente
Tuve que usar
required="required"
junto con el mismo nombre y tipo que la validación funcionó bien.fuente