TL; DR: définissez l' required
attribut d'au moins une entrée du groupe radio.
Le réglage required
de toutes les entrées est plus clair, mais pas nécessaire (sauf si des boutons radio sont générés dynamiquement).
Pour grouper les boutons radio, ils doivent tous avoir la même name
valeur. Cela permet à un seul d'être sélectionné à la fois et s'applique required
à l'ensemble du groupe.
<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>
Prenez également note de:
Pour éviter toute confusion quant à la nécessité ou non d'un groupe de boutons radio, les auteurs sont encouragés à spécifier l'attribut sur tous les boutons radio d'un groupe. En effet, en général, les auteurs sont encouragés à éviter d'avoir des groupes de boutons radio qui n'ont pas de contrôles initialement vérifiés, car il s'agit d'un état dans lequel l'utilisateur ne peut pas revenir, et est donc généralement considéré comme une mauvaise interface utilisateur.
La source
Vous pouvez utiliser cet extrait de code ...
Spécifiez le mot clé " requis " dans l' une des instructions de sélection . Si vous souhaitez modifier le mode par défaut de son apparence. Vous pouvez suivre ces étapes. C'est juste pour des informations supplémentaires si vous avez l'intention de modifier le comportement par défaut.
Ajoutez ce qui suit dans votre
.css
fichier.Pour plus d'informations, vous pouvez consulter l'URL suivante.
https://css-tricks.com/almanac/selectors/r/required/
la source
Si vos boutons radio ont été personnalisés, par exemple, l'icône d'origine du bouton radio a été masquée via css
display:none
afin que vous puissiez créer votre propre bouton radio, vous obtiendrez peut-être l'erreur.La solution consiste à remplacer
display:none
paropacity:0
la source
display:none
. C'est déjà répondu ici: stackoverflow.com/questions/49687229/…Voici une implémentation très basique mais moderne des boutons radio requis avec validation HTML5 native:
Bien que je sois un grand fan de l'approche minimaliste de l'utilisation de la validation HTML5 native, vous voudrez peut-être la remplacer par une validation Javascript à long terme. La validation Javascript vous donne beaucoup plus de contrôle sur le processus de validation et vous permet de définir de vraies classes (au lieu de pseudo-classes) pour améliorer le style des champs (in) valides. Cette validation HTML5 native peut être votre solution de rechange en cas de Javascript cassé (ou manquant). Vous pouvez en trouver un exemple ici , ainsi que d'autres suggestions sur la façon de créer de meilleures formes , inspirées d' Andrew Cole .
la source
J'ai dû utiliser
required="required"
le même nom et le même type que la validation a bien fonctionné.la source