begin process at 2012 05 29 21:59:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Function & Méthodes

 > 

QCM


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

QCM

lundi 21 mai 2007 à 00:37:27 | QCM

Tovi

Bonsoir,

Je suis LE novice dans le javascript.
Je dois réaliser un audit professionnel.
Afin d'avoir une présentation correcte, j'ai voulu le réaliser sous une page html, d'ou le javascript (car serveur client).

Je me suis basé sur des questionnaires d'aide ( [ Lien ] ) pour confectionner ma premiere ébauche.

J'ai demandé conseil à des connaissances en la matière, mais je bloque pour un dernier point.
J'aurais souhaité rajouter un commentaire personnel pour chaque question... et que celui-ci apparaisse sur la page générée pour les résultats.
Or la mention UNDEFINED pour ma value est présente.

J'ai omis d'inclure ce commentaire personnel dans mon langage javascript. Mais quelle formule dois je utiliser ?

Voici ma source (j'ai volontairement laissé que la 1ère question) :



<html><head><title>CTL</title>
       
<script languag="JavaScript">

<!-- 

// Copyright Cyril Roiron
// All rights reserved

var ttok="";

// les tablos necessaires
var question = new Array();

var a=0;
var b=0;
var x=0;
var m=0;


question[m] = "1.1.1 RGX ?"
m++;
// les tablos necessaires
var f_b = new Array();
var correct = new Array();
var rep = new Array();
var com = new Array();
var qom = new Array();

// crée la fenètre principale avec son contenu
function creefenetre(contenu, width, height)
{
var cc = contenu;
contenu = "<html><head><title>Correction</title></head><body bgcolor='#ffffff'><h2 align=center>R&eacute;sultats</h2>" + cc;
contenu  += "</body></html>";document.clear();document.open();document.writeln(contenu);document.close();
}

function verifier(yo)
{
var resultat="";
var erreur=0;


for (var n=0; n < (question.length); n++)
{
if (!rep[n])
{
ttok=ttok+"Vous n'avez pas repondu à la question "+(n+1)+": \n";
ttok=ttok+"'"+question[n]+"'\n";
}

else {
if(correct[n] == 1)
{
rep[n]="<font color='#00be00'>"+rep[n]+"</font>";
//0B6912  20B200
com[n]="<font color='#00be00'>"+com[n]+"</font>";
}
else
{
rep[n]="<font color='#ff0000'>"+rep[n]+"</font>";
erreur++;
}
resultat+="<hr><dl><dt>A la question: <b>"+question[n]+"</b><dd>Vous avez r&eacute;pondu: "+rep[n]+"</dl>"+f_b[n]+qom[n];

}
}

if (ttok != "")
{ alert(ttok); }
else {

if (erreur==0)
{
resultat+="<p><hr><h3 align=center>Vous avez r&eacute;pondu correctement &agrave; toutes les questions, f&eacute;licitation &nbsp;  :)</h3>";
}
else
{
if (erreur==1)
{
resultat+="<p><hr><h3 align=center>Vous avez fait une erreur</h3>";
}
else
{
resultat+="<p><hr><h3 align=center>Vous avez fait "+erreur+" erreurs</h3>";
}
}

for (var i=0; i<yo.elements.length; i++)
{
yo.elements[i].checked = 0;
}

creefenetre(resultat, 600, 600);
 
}
}


// -->
</script></head>
    <body bgcolor="white">

<h2 align="center">
CTL</h2>

<form name="questionnaire">
<hr>

 <script language="JavaScript">
<!--
 document.write(question[0].bold());
 //-->
 </script>
 <br>
 <input name="r0" value="OK" onclick="f_b[0]='ok'; correct[0]=1; rep[0]=this.value" type="radio">
 <script language="JavaScript">
 <!--
 x=0;
 document.write(document.questionnaire.r0.value);

 //-->
 </script>
 
 <br>
 <input name="r0" value="KO" onclick="f_b[0]='ko'; correct[0]=0; rep[0]=this.value" type="radio">
 <script language="JavaScript">
 <!--
 x++;
 document.write(document.questionnaire.r0[x].value);
 //-->
 </script>

<br>
<TEXTAREA COLS="180" ROWS="1" style="background-color: #FFFFCC; border: 1px #959EAD solid;
font-family: Verdana; font-size: 11px" name="qr0" value="" qom[0]="this.value"></TEXTAREA>





Merci d'avance pour votre aide ;)

lundi 21 mai 2007 à 10:18:47 | Re : QCM

bultez

Membre Club




Bonjour,

pas vu de UNDEFINED nulle part
mais :
    1°
        <html><head><title>CTL</title>
        <script language="JavaScript">
        <!--  pas languag      et il vaudrait mieux <script type="text/javascript">
        // Copyright Cyril Roiron
    2°
       ...name="qr0" value="" qom[0]="this.value"></TEXTAREA>
       manque l'évênement pour le javascript
       ...name="qr0" value="" onJENESAISPASQUOI='qom[0]="this.value";'></TEXTAREA>



Cordialement            Bul     [mon Site]     [M'écrire]



lundi 21 mai 2007 à 10:20:13 | Re : QCM

bultez

Membre Club
pas regardé très loin... il y a peut-être d'autres choses....

Cordialement            Bul     [mon Site]     [M'écrire]



lundi 21 mai 2007 à 13:13:48 | Re : QCM

bultez

Membre Club
d'ailleurs c'est plutôt :
...onJENESAISPASQUOI ='qom[0]=this.value;'
mais ça ne doit plus t'intéresser, je suppose.


Cordialement                Bul     [mon Site]     [M'écrire]



lundi 21 mai 2007 à 19:28:01 | Re : QCM

Tovi

En fait voici à quoi ressemble mon questionnaire :



Oui effectivement c'est un ONCLICK

Mais après la VALUE, c'est le commentaire écrit , donc la value=""est erronée, il me dit UNDEFINED quand je génére les résultats.

J'ai d'abord modifié : var qom = new Array(); par
var qr = new Array(); vu que j'ai appelé mes commentaire "qr"

J'ai testé çà :

<TEXTAREA COLS="180" ROWS="1" style="background-color: #FFFFCC; border: 1px #959EAD solid;
font-family: Verdana; font-size: 11px" name="qr0" value="" onclick='qr[0]=document.write;'></TEXTAREA>

J'ai désormais un texte d'affiché mais le voici : function write() { [native code] }

mardi 22 mai 2007 à 00:31:43 | Re : QCM

Tovi

En fait le onSubmit devrait etre plus approprié... parcontre j'avoue etre totalement perdu pour la direction de celui-ci :s




<html><head><title>FAQ</title>


       
<script type="text/javascript">

<!--
function CheckInput() {
 for(i=0; i<document.forms[0].elements.length; ++i)
  if(document.forms[0].elements[i].value == "")  {
    alert("Tous les champs n'ont pas été remplis!");
        document.forms[0].elements[i].focus();
        return false;
   }
  return true;
}
//-->



<!-- 

// Copyright Cyril Roiron
// All rights reserved

var ttok="";

// les tablos necessaires
var question = new Array();

var a=0;
var b=0;
var x=0;
var m=0;


question[m] = "1.1.1 ?"
m++;
question[m] = "1.1.2 ?"
m++;
// les tablos necessaires
var f_b = new Array();
var correct = new Array();
var rep = new Array();
var com = new Array();
var qr = new Array();

// crée la fenètre principale avec son contenu
function creefenetre(contenu, width, height)
{
var cc = contenu;
contenu = "<html><head><title>Correction</title></head><body bgcolor='#ffffff'><h2 align=center>R&eacute;sultats</h2>" + cc;
contenu  += "</body></html>";document.clear();document.open();document.writeln(contenu);document.close();
}

function verifier(yo)
{
var resultat="";
var erreur=0;


for (var n=0; n < (question.length); n++)
{
if (!rep[n])
{
ttok=ttok+"Vous n'avez pas repondu à la question "+(n+1)+": \n";
ttok=ttok+"'"+question[n]+"'\n";
}

else {
if(correct[n] == 1)
{
rep[n]="<font color='#00be00'>"+rep[n]+"</font>";
//0B6912  20B200
com[n]="<font color='#00be00'>"+com[n]+"</font>";
}
else
{
rep[n]="<font color='#ff0000'>"+rep[n]+"</font>";
erreur++;
}
resultat+="<hr><dl><dt>A la question: <b>"+question[n]+"</b><dd>Vous avez r&eacute;pondu: "+rep[n]+"</dl>"+qr[n];

}
}

if (ttok != "")
{ alert(ttok); }
else {

if (erreur==0)
{
resultat+="<p><hr><h3 align=center>Vous avez r&eacute;pondu correctement &agrave; toutes les questions, f&eacute;licitation &nbsp;  :)</h3>";
}
else
{
if (erreur==1)
{
resultat+="<p><hr><h3 align=center>Vous avez fait une erreur</h3>";
}
else
{
resultat+="<p><hr><h3 align=center>Vous avez fait "+erreur+" erreurs</h3>";
}
}

for (var i=0; i<yo.elements.length; i++)
{
yo.elements[i].checked = 0;
}

creefenetre(resultat, 600, 600);
 
}
}


// -->
</script></head>
    <body bgcolor="white">

<h2 align="center">
FAQ</h2>

<form name="questionnaire" action="test.htm" onSubmit="return CheckInput();">
<hr>

 <script language="JavaScript">
<!--
 document.write(question[0].bold());
 //-->
 </script>
 <br>
 <input name="r0" value="OK" onclick="f_b[0]='ok'; correct[0]=1; rep[0]=this.value" type="radio">
 <script language="JavaScript">
 <!--
 x=0;
 document.write(document.questionnaire.r0.value);

 //-->
 </script>
 
 <br>
 <input name="r0" value="KO" onclick="f_b[0]='ko'; correct[0]=0; rep[0]=this.value" type="radio">
 <script language="JavaScript">
 <!--
 x++;
 document.write(document.questionnaire.r0[x].value);
 //-->
 </script>

<br>
<input name="qr0" style="background-color: #FFFFCC; border: 1px #959EAD solid;
font-family: Verdana; font-size: 11px" size="200" value="" onSubmit= >


<hr>
 
 <script language="JavaScript">
<!--
 document.write(question[1].bold());
 //-->
 </script>
<br>
 <input name="r1" value="OK" onclick="f_b[1]='ok'; correct[1]=1; rep[1]=this.value" type="radio">
 <script language="JavaScript">
 <!--
 x=0;
 document.write(document.questionnaire.r1.value);
 //-->
 </script>

 <br>
 
 <input name="r1" value="KO" onclick="f_b[1]='ko'; correct[1]=0; rep[1]=this.value" type="radio">
 <script language="JavaScript">
 <!--
 x++;
 document.write(document.questionnaire.r1[x].value);
 //-->
 </script>

<hr>
 
<p align="center">
<input value="Afficher les résultats" onclick="ttok=''; verifier(this.form);" type="button">

</p></form></body></html>



mardi 22 mai 2007 à 07:11:02 | Re : QCM

bultez

Membre Club




>>...onclick='qr[0]=document.write;'></TEXTAREA>
>>J'ai désormais un texte d'affiché mais le voici : function write() { [native code] }

ben oui : c'est ce qui est fait, demandé.
document.write est un ordre (une function) javascript
"normalement" on utilise document.write("du texte, des balises html....")

donc affecter à une variable (qr[0]) une function (document.write) ?
ça donne le texte affiché.

que veux-tu faire lorsque l'on clique sur le textarea ?




                Cordialement          Bul     [mon Site]     [M'écrire]




Cette discussion est classée dans : question, var, document, rep, ttok


Répondre à ce message

Sujets en rapport avec ce message

Question [ par ichigokurosaki ] Bonjour,Bon voilà, j'ai un petit souci avec ce code :test  var saisie = ""; var compteur = 1; GetElementByTagName dans un tableau [ par jubourbon ] Bonjour à tous,J'ai une fonction, qui me permet de recuperer des avleurs dans un tableau, de rechercher des Expressions Regulieres, puis de les modifi Accés à une page via user et mot de passe avec ajax et php [ par developvbdebut ] BonsoirVoici mon problème.Au départ je suis sur la page index.html, en saissant le bon nom utilisateur et le mot de page, je veux acceder à la page su envois de formulaire ajax [ par Annadrill ] bonjour,voilà, j'aimerais modifier la fonction que je vous mets la dessous, de manière a pouvoir l'utiliser avec n'importe quel formulaire, en précisa lien url dans tableau dynamique ! [ par san67 ] Bonjour tout le monde, petit souci en ce mardi matin :)Alors voila j'ai un tableau dynamique en javascript et j'aimerai que dans une partie du tableau Combiner deux codes [ par Rush3r ] Bonjour, Je ne connais pas grand chose en Javascript, néanmoins je souhaite ajouté a mon site quelques fonctions que j'ai déjà repérés ici.Le problème Lancer une fonction après la fin d'exécution d'une autre fonction [ par bm3w325i ] Bonjour,Actuellement j'ai un input qui lors d'un Onclick se rempli par des coordonnées GoogleMaps, un fois rempli je récupère les données pour les aff trouver la valeur maxi [ par tonytruand ] Bonjour à tous,Quelqu'un pourrait il me dire ou je me trompe ? merci par avance.En fait je cherche à trouver la valeur maxi dans une liste d'input qui Problème affichage images sous ie [ par freemykl73 ] Bonjour à tous,Je cherche à mettre en place un script qui fait un décompte sur un site InternetJ'ai un petit problème avec ce script sous IE7: les ima [déplacé Bar -> JS] tableaux [ par nabilwael ] Bonjour,j'ai ce fichier js :var i = 0;    function create_champ(){    if(i        document.getElementById('champs').innerHTML += " Name</label&gt


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,947 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales