Bouton radio avec control de saisie
Résolu
nawak.seb
Messages postés
65
Date d'inscription
Statut
Membre
Dernière intervention
-
kenou -
kenou -
Bonjour,
Dans un formulaire PHP, j’ai 3 boutons radio (aucune par défaut), avec un bouton « envoyer ».
Mon souhait était d’avoir un contrôle de saisie sur ses radios en JavaScript.
Seulement la radio 1 qui est considéré comme vrai; les autres,sont considéré comme faux.
Voici mon code :
... plus loin ...
Comment je dois faire pour avoir un control sur toutes les radios et non une seule ?
Dans un formulaire PHP, j’ai 3 boutons radio (aucune par défaut), avec un bouton « envoyer ».
Mon souhait était d’avoir un contrôle de saisie sur ses radios en JavaScript.
Seulement la radio 1 qui est considéré comme vrai; les autres,sont considéré comme faux.
Voici mon code :
<script type="text/javascript"> function verif() { if(document.getElementById('travaux').checked==false) { alert ("Veuillez sélectionner un type de travaux"); document.form1.site.focus(); return false; } else {return true;} } </script>
... plus loin ...
<table width="200"> <tr> <td><label> <input type="radio" id="travaux" name="travaux" value="1"> Correctif</label></td> </tr> <tr> <td><label> <input type="radio" id="travaux" name="travaux" value="2"> Travaux neufs</label></td> </tr> <tr> <td><label> <input type="radio" id="travaux" name="travaux" value="3"> Préventif</label></td> </tr> <tr> <td><label> <input type="radio" id="travaux" name="travaux" value="4"> Amélioration</label></td> </tr> </table>
Comment je dois faire pour avoir un control sur toutes les radios et non une seule ?
A voir également:
- Bouton radio avec control de saisie
- Fan control - Télécharger - Optimisation
- Saisie gestuelle iphone - Guide
- Station de radio - Télécharger - Médias et Actualité
- Adb app control - Guide
- Control center 4 - Télécharger - Divers Utilitaires
16 réponses
Salut,
tu dis avoir 3 boutons radios : moi j'en vois 4. Et ensuite tu dis que ton code marche juste avec la première? C'est bien ça?
Essaie ce code :
C'est ta fonction que j'ai un peu modifié.
tu dis avoir 3 boutons radios : moi j'en vois 4. Et ensuite tu dis que ton code marche juste avec la première? C'est bien ça?
Essaie ce code :
function verif() { var valide=false; var inpNodes = document.getElementsByName('travaux'); for(var i=0; i< inpNodes.length;i++){ if ( inpNodes[i].getAttribute('checked')==true){ valide = true; } } if (valide == false){ alert ("Veuillez sélectionner un type de travaux"); document.form1.site.focus(); } return valide; }
C'est ta fonction que j'ai un peu modifié.
Salut, tu as 4 boutons radios à ce que je vois, et pas 3.
Tu dis que ta fonction ne marche que pour la première? C'est un peu normal, tes quatre boutons radios ont la même id et tu ne fais qu'un simple if. Dès qu'il tombe sur la première id cherchée, il va pas plus loin.
Essaie ça :
C'est ta fonction que j'ai un peu modifié.
Tu dis que ta fonction ne marche que pour la première? C'est un peu normal, tes quatre boutons radios ont la même id et tu ne fais qu'un simple if. Dès qu'il tombe sur la première id cherchée, il va pas plus loin.
Essaie ça :
function verif() { var valide=false; var inpNodes = document.getElementsByName('travaux'); for(var i=0; i< inpNodes.length;i++){ if ( inpNodes[i].getAttribute('checked')==true){ valide = true; } } if (valide == false){ alert ("Veuillez sélectionner un type de travaux"); document.form1.site.focus(); } return valide; }
C'est ta fonction que j'ai un peu modifié.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Un grand MERCI a Sky34gl3 !!! C’était bien ça !
Ca fonctionne !!
Me voilà débloqué jusqu'à la prochaine fois ! :D
Ca fonctionne !!
Me voilà débloqué jusqu'à la prochaine fois ! :D
Me revoilà, avec une question toute bête ;
Quand je clique sur le bouton « ok » de mon alert, celle-ci m’envoi a sur une autre fenêtre, et non de mon formulaire.
Comment je peu faire pour rester sur ce formulaire ?
Quand je clique sur le bouton « ok » de mon alert, celle-ci m’envoi a sur une autre fenêtre, et non de mon formulaire.
Comment je peu faire pour rester sur ce formulaire ?
Salut.
Et en faisant comme ça?
Et en faisant comme ça?
function verif() { var valide=false; var inpNodes = document.getElementsByName('travaux'); for(var i=0; i< inpNodes.length;i++){ if ( inpNodes[i].getAttribute('checked')==true){ valide = true; } } if (valide == false){ alert ("Veuillez sélectionner un type de travaux"); return false; }else{ return true; } }
<form action="tapage.php" onsubmit="return verif()" method="post">
<input type="submit" value="Go"/><!-- Ne pas mettre de onclick dans ton submit. -->
Hum hum...j'ai testé mais toujours la meme chose
Voici ceux qu'il se passe :
Notice: Undefined variable: travaux in ... \insert_di.php on line 12
Warning: Cannot modify header information - headers already sent by (output started at ...\insert_di.php:12) in ... \insert_di.php on line 33
C’est normal qu’il ne trouve pas la variable « travaux » vu qu’elle n’est pas coché !, mais comment lui dire dans ce cas là ?
Voici ceux qu'il se passe :
Notice: Undefined variable: travaux in ... \insert_di.php on line 12
Warning: Cannot modify header information - headers already sent by (output started at ...\insert_di.php:12) in ... \insert_di.php on line 33
C’est normal qu’il ne trouve pas la variable « travaux » vu qu’elle n’est pas coché !, mais comment lui dire dans ce cas là ?
Ce code est fonctionnel je le confirme :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript">
function verif()
{
var valide=false;
var inpNodes = document.getElementsByName('travaux');
for(var i=0; i< inpNodes.length;i++){
if ( inpNodes[i].getAttribute('checked')==true){
valide = true;
}
}
if (valide == false){
alert ("Veuillez sélectionner un type de travaux");
return false;
}else{
return true;
}
}
</script>
</head>
<body>
<form action="coucou.php" onsubmit="return verif()" method="post">
<table width="200">
<tr>
<td><label>
<input type="radio" id="travaux" name="travaux" value="1">
Correctif</label></td>
</tr>
<tr>
<td><label>
<input type="radio" id="travaux" name="travaux" value="2">
Travaux neufs</label></td>
</tr>
<tr>
<td><label>
<input type="radio" id="travaux" name="travaux" value="3">
Préventif</label></td>
</tr>
<tr>
<td><label>
<input type="radio" id="travaux" name="travaux" value="4">
Amélioration</label></td>
</tr>
</table>
<input type="submit" value="Go"/>
</form>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript">
function verif()
{
var valide=false;
var inpNodes = document.getElementsByName('travaux');
for(var i=0; i< inpNodes.length;i++){
if ( inpNodes[i].getAttribute('checked')==true){
valide = true;
}
}
if (valide == false){
alert ("Veuillez sélectionner un type de travaux");
return false;
}else{
return true;
}
}
</script>
</head>
<body>
<form action="coucou.php" onsubmit="return verif()" method="post">
<table width="200">
<tr>
<td><label>
<input type="radio" id="travaux" name="travaux" value="1">
Correctif</label></td>
</tr>
<tr>
<td><label>
<input type="radio" id="travaux" name="travaux" value="2">
Travaux neufs</label></td>
</tr>
<tr>
<td><label>
<input type="radio" id="travaux" name="travaux" value="3">
Préventif</label></td>
</tr>
<tr>
<td><label>
<input type="radio" id="travaux" name="travaux" value="4">
Amélioration</label></td>
</tr>
</table>
<input type="submit" value="Go"/>
</form>
</body>
</html>
Impeccable !
Mon erreur était dans mon code JavaScript, je mettais trompé par rapport au focus, les champs n’étaient pas bon
Au lieu de
Encore merci !
Mon erreur était dans mon code JavaScript, je mettais trompé par rapport au focus, les champs n’étaient pas bon
document.form1.site.focus();
Au lieu de
document.form1.travaux[0].focus();
Encore merci !
Et avec 2 boutons submit « Envoyer » et « annuler »
Au moment de l'action « Annuler», comment lui dire de ne pas contrôler la saisie ?
Voici mon code:
Et après , j'arrete mes questions !lol
Au moment de l'action « Annuler», comment lui dire de ne pas contrôler la saisie ?
Voici mon code:
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>test</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <script type="text/javascript"> function verif() { var valide=false; var inpNodes = document.getElementsByName('travaux'); for(var i=0; i< inpNodes.length;i++){ if ( inpNodes[i].getAttribute('checked')==true){ valide = true; } } if (valide == false){ alert ("Veuillez sélectionner un type de travaux"); return false; }else{return true;}} function annul() { window.location.href = 'page1.php'; return true; } </script> </head> <body> <form action="coucou.php" onsubmit="return verif()" method="post"> <table width="200"> <tr> <td><label> <input type="radio" id="travaux" name="travaux" value="1"> Correctif</label></td> </tr> <tr> <td><label> <input type="radio" id="travaux" name="travaux" value="2"> Travaux neufs</label></td> </tr> <tr> <td><label> <input type="radio" id="travaux" name="travaux" value="3"> Préventif</label></td> </tr> <tr> <td><label> <input type="radio" id="travaux" name="travaux" value="4"> Amélioration</label></td> </tr> </table> <input type="submit" value="Go"/> <input type="submit" value="Annuler" onclick="annul()" /> </form> </body> </html>
Et après , j'arrete mes questions !lol
Peut être comme ça? :
<input type="submit" value="Annuler" onclick="javascript:this.form.onsubmit='';annul();" />