script bouton radio couleur

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : script bouton radio couleur

Re: script bouton radio couleur

par fado59 » 15 juin 2010, 15:12

j'ai réussi j'ai juste remplacer mon script par celui la :

Code : Tout sélectionner

var basculeOrange=(function(){ var deja_repondu=[]; return function(elem) { if(deja_repondu.indexOf(elem.name)==-1){deja_repondu.push(elem.name);} var liste = document.getElementsByTagName('input'); for (var i = 0; i < liste.length; i++) { if (liste[i].type==="radio"){ if(liste[i].checked && deja_repondu.indexOf(liste[i].name)!=-1){ liste[i].nextSibling.className="orange"; }else{ liste[i].nextSibling.className=""; } } } } })();

script bouton radio couleur

par fado59 » 15 juin 2010, 14:25

Bonjour,

J'aimerai mettre en couleur le texte à côté d'un bouton radio lorsque je clique sur ce bouton. Mais projet est un quizz. Il y a des plusieurs questions avec plusieurs boutons radio.

Voici la ou je suis arrivé :

J'arrive à coché par défaut le bouton radio 1 de chaque question.
J'arrive à colorer le texte lorsque je clique sur un bouton radio mais le soucis c'est que les autres bouton qui sont également coché (normal ils sont coché par défaut) deviennent rouge.

Je dois obligatoirement avoir un bouton coché par défaut, c'est dans mon cahier des charges. Si quelqu'un peut m'aider car je n'y arrives pas. Je suis dessus depuis hier

Voici le code :

Code : Tout sélectionner

<html> <head> <title>Quiz Info De Base</title> <style> body { font-family: Verdana, Arial, Helvetica, sans-serif; background-color: #ffffff; background-attachment : fixed; font-size: 11px; } .orange { color: #FF0000; font-weight: bold; .noir { color: #000000; font-weight: bold; } </style> </head> <body background=image/imagefond.jpg> <?php $quizz= array( array("<u>Question 1</u> : Quel dossier est spécialement prévu pour vous permettre de stocker vos données personnelles ?","Ordinateur","Documents","Corbeille","2","<b><u>Commentaire</u></b> : Pour rappel, Documents est votre dossier personnel, dans lequel vous rangerez toutes vos données."), array("<u>Question 2</u> : Quelle est la version la plus récente de Windows ?","XP","Millenium","Seven (7)","98","Vista","3","<b><u>Commentaire</u></b> : Nous avons dans l'ordre : 98 ; Millenium ; X¨; Vista ; Seven (7)."), array("<u>Question 3</u> : Parmi ces unités de mesure, quelle valeur est la plus importante ?","Mega-Octet","Kilo-Octet","Giga-Octet","3","<b><u>Commentaire</u></b> : Nous avons dans l'ordre : Kilo-Octet ; Mega-Octet ; Giga-Octet."), array("<u>Question 4</u> : Parmi ces supports de stockage, lequel a disparu ?","La clef USB","La disquette","Le CD-ROM","2","<b><u>Commentaire</u></b> : La disquette a disparu car sa technologie est dépassé."), array("<u>Question 5</u> : Que trouve t-on dans la colonne de gauche du menu DEMARRER","La météo","Vos documents","Vos programmes","3","<b><u>Commentaire</u></b> : La colonne de gauche contient tous les programmes que vous possédez dans votre ordinateur."), array("<u>Question 6</u> : Que signifie les lettres PC ?","Personnal Computer","Private Computer","Plante Constamment","Petit Castor","1","<b><u>Commentaire</u></b> : Ce sigle est tiré de l'anglais Personnal Computer signifiant en français ordinateur personnel."), array("<u>Question 7</u> : Combien y a t-il de boutons au minimum sur une souris ?","1","2","3","4","2","<b><u>Commentaire</u></b> : Il y a au moins le bouton gauche et le bouton droit mais certaines souries sont pourvues de boutons supplémentaires"), array("<u>Question 8</u> : Avec l'écran et le clavier, quel est le dernier élément indispensable pour utiliser un ordinateur ?","La manette","La souris","L'imprimante","La webcam","2","<b><u>Commentaire</u></b> : La souris est un élément vitale de l'ordinateur car la quasi-totalité de ce qu'on peut faire se fait via la souris."), array("<u>Question 9</u> : Quel élément ne retrouve t-on pas dans le menu DEMARRER ?","Documents","Ordinateur","Images","Corbeille","4","<b><u>Commentaire</u></b> : La corbeille est la seule icône qui ne se trouve que sur le Bureau de Windows"), array("<u>Question 10</u> : A quoi ressemble un icône ?","A une flèche","A une petite image avec du texte","A un texte simple","A rien, ça n'existe pas","2","<b><u>Commentaire</u></b> : On retrouve toujours des icônes sur le Bureau de Windows par exemple, ou dans une clef usb... On doit toujours double-cliquer gauche sur une icône."), ); include("infodebasecorrection.php"); ?> </body> </html>

Code : Tout sélectionner

<html> <head> <script> function basculeOrange(elem) { var liste = document.getElementsByTagName('input'); for (var i = 0; i < liste.length; i++) { if (liste[i].type==="radio"){ if(liste[i].checked){ liste[i].nextSibling.className="orange"; }else{ liste[i].nextSibling.className=""; } } } } </script> </head> <body> <?php error_reporting(E_ALL ^ E_NOTICE); // pour éviter certaines erreurs à l'affichage if (!isset($_POST['result'])) { print "<input onclick='history.go(-1)' type='image' name='image' value='Retour' src='image/boutonretour.gif'/>"; // Bouton Retour print '<center><FONT face="French Script MT" size="50" >Initiation : Info De Base</FONT></center><br>'; // Titre du haut de la page print '<center><FONT face="French Script MT" size="5" ><b>Avant de commencer le Quiz, merci de remplir les champs Nom et Prénom</b></FONT></center><br>'; // Titre du haut de la page print '<center><FONT face="French Script MT" size="5" ><b>Vérifiez bien que vous avez répondu à toutes les questions puis valider</b></FONT></center><br>'; // Consignes du quiz print '<center><FONT face="French Script MT" size="5" ><b>Attention : Toutes les questions ont une réponse cochée par défaut.</b></FONT></center><br>'; print '<center><FONT face="French Script MT" size="5" ><b>Ce nest pas obligatoirement la bonne réponse.</b></FONT></center><br>'; print '<center><FONT face="French Script MT" size="5" ><b>1 seule réponse par question est possible.</b></FONT></center><br>'; print '<center><FONT face="French Script MT" size="5" ><b>Bonne Chance.</b></FONT></center><br>'; print "<form id=\"form1\" action=\"{$_SERVER['PHP_SELF']}\" method='post'>"; print '<b> Votre Nom :</b> <input type=text name="nom">'; // Champ Nom print '<b> Votre Prénom :</b> <input type=text name="prenom"><br><br>'; // Champ Prénom for ($i=0; $i<count($quizz); $i++) { print '<blockquote><span class="noir">'; print $quizz[$i][0]; print '</span><br /><br />'; for ($j=1; $j<count($quizz[$i])-2; $j++) { $question=$quizz[$i][$j]; if($j == 1) { print "<input type='radio' name=\"$i\" checked=\"$checked\" onclick='basculeOrange(this)' value=\"$j\" /><span> $question</span><br /> "; // Bouton radio, premier coché par défaut }else { print "<input type='radio' name=\"$i\" onclick='basculeOrange(this)' value=\"$j\" /><span> $question</span><br /> "; // Lors d'un clic sur un bouton radio, la proposition qui correspond à ce bouton devient orange } } print "</blockquote>"; } $nombrepoints=0; print "<input type='hidden' name='result' value='voir' /><br />\n<center>"; print "<input type='image' src=image/boutonvalider.gif value='VALIDER' />"; // Bouton Valider }else { $nom = $_POST['nom']; // On récupère le nom de la personne $prenom = $_POST['prenom']; // On récupère le prénom de la personne if(($nom!="") && ($prenom!="")) { print '<center><FONT face="French Script MT" size="50" >Initiation Info De Base : Correction</FONT></center><br>'; // Titre de haut de la page Correction $points=0; for($i=0; $i<count($quizz); $i++ ) { $mareponse = trim($_POST[$i]); print '<blockquote><span class="orange">'; print $quizz[$i][0]."</span><br /><br />"; $numero_bonne=$quizz[$i][count($quizz[$i])-2]; // avant dernière valeur du tableau $bonnereponse=$quizz[$i][$numero_bonne]; // Bonne réponse if ($mareponse==$numero_bonne) { // Si la réponse est celle attendu print "<b><u>Réponse</u></b> : Vous avez répondu <b><i>".$bonnereponse."</i></b> et vous avez raison."; // Message si la réponse est correct $nombrepoints++; }else { // Sinon, si la réponse n'est pas celle attendu print "<b><u>Réponse</u></b> : Vous avez répondu <b>".$quizz[$i][$mareponse]."</b> mais la bonne réponse est <b>".$bonnereponse."</b> " ; // Message si la réponse est incorrect } $commentaire=$quizz[$i][count($quizz[$i])-1]; // dernière valeur du tableau print "<br />".$commentaire."<br />"; // Commentaires lors de la correction du quiz print "</blockquote>"; } if($nombrepoints==count($quizz)) { // Si j'ai bon à toutes les questions print"<h1 align='center'>Félicitations Toutes vos réponses sont correctes!</h1>"; // Message si vous avez répondu correctement à toute les questions }else { if ($nombrepoints=="") { // Nombre de points = 0 si toutes les réponses sont fausses $nombrepoints = 0 ; } print "<br /><h1 align='center'>Vous avez la note de $nombrepoints sur ".count($quizz); // Message si il y a minimum 1 erreur } // envoi du mail $headers ='From: "cyber quizz"<[email protected]>'."\n"; $headers .='Reply-To: [email protected]'."\n"; $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n"; $headers .='Content-Transfer-Encoding: 8bit'; $mail = mail('[email protected]', 'note du quizz [Info De Base]', "$nom $prenom a obtenu la note de $nombrepoints sur 10", $headers); // contenu du mail }else{ // Message d'alert et redirection vers la page ou il y a les questions. if(($nom=='')&&($prenom=='')) { echo"<script LANGUAGE='JavaScript'>alert('Veuillez remplir les champs Nom et Prenom ');</SCRIPT>"; echo"<script LANGUAGE='JavaScript'>window.location='http://127.0.0.1/Utilisateur_Quiz_Des_Initiations/Utilisateur_Quiz_Des_Initiations/infodebase.php';</SCRIPT>"; } if($nom == '') { // Message d'alert et redirection vers la page ou il y a les questions. echo"<script LANGUAGE='JavaScript'>alert('Veuillez remplir le champ Nom');</SCRIPT>"; echo"<script LANGUAGE='JavaScript'>window.location='http://127.0.0.1/Utilisateur_Quiz_Des_Initiations/Utilisateur_Quiz_Des_Initiations/infodebase.php';</SCRIPT>"; } if($prenom == '') { // Message d'alert et redirection vers la page ou il y a les questions. echo"<script LANGUAGE='JavaScript'>alert('Veuillez remplir le champ Prenom');</SCRIPT>"; echo"<script LANGUAGE='JavaScript'>window.location='http://127.0.0.1/Utilisateur_Quiz_Des_Initiations/Utilisateur_Quiz_Des_Initiations/infodebase.php';</SCRIPT>"; } } } ?> </body> </html>
Le soucis doit venir de mon script :

Code : Tout sélectionner

<script> function basculeOrange(elem) { var liste = document.getElementsByTagName('input'); for (var i = 0; i < liste.length; i++) { if (liste[i].type==="radio"){ if(liste[i].checked){ liste[i].nextSibling.className="orange"; }else{ liste[i].nextSibling.className=""; } } } } </script>