Bonjours,
j'ai creé un tableau et je souhaite le remplir grace a des variables.
(il s'agit d'un tableau de score réalisé par l'utilisateur dans differents exercices)

Quand je met une variable en dur genre var test = "blabla"; et que je veux afficher la variable tout va bien.

Le probleme c'est que je veux afficher une variable qui est le résultat d'une fonction et la, a chaque fois, il me dit "undefined".

C'est a mon avis un probleme de variable locale/globale mais je n'arrive pas a le resoudre.

Voici comment j'affiche mon tableau:
Dans ma page score.html j'ai ces cette ligne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<br> <div id="support1" class="support1"><SCRIPT language="javascript">document.write(eval(idfiche+"tableaus_lire")); </SCRIPT>
Et dans variables.js j'ai mon tableau:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
var score_tableaus_lire     =      "Pour les exercices : 'Savoir lire' <br><br><TABLE  BORDER=1 BORDERCOLOR=#000000 CELLPADDING=5 CELLSPACING=0>	<TR VALIGN=TOP>		<TD class='texte'>&nbsp;&nbsp;Exercice&nbsp;&nbsp;</TD>		<TD ><NOBR><span class='texte'>&nbsp;&nbsp;Bonnes r&eacute;ponses&nbsp;&nbsp;</span>	</TD>		<TD ><span class='texte'>&nbsp;&nbsp;        &Eacute;rreures&nbsp;        &nbsp;</TD>			</TR>	<TR VALIGN=TOP><td><span class='texte'>&nbsp;&nbsp;I. Je lis, j’entends, j’&eacute;cris&nbsp;&nbsp;</TD>		<TD ><NOBR>&nbsp;&nbsp;&nbsp;&nbsp;</TD>		<TD >&nbsp;&nbsp;"+score_titre+"&nbsp;&nbsp;</TD>			</TR> <TR VALIGN=TOP><td><span class='texte'>&nbsp;&nbsp;II. Je retrouve l'ordre alphab&eacute;tique&nbsp;&nbsp;</TD>		<TD ><NOBR><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>		<TD ><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>		<TR VALIGN=TOP><td><span class='texte'>&nbsp;&nbsp;III. Je sais ponctuer et mettre en page un texte&nbsp;&nbsp;</TD>		<TD ><NOBR><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>		<TD ><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>			</TR><TR VALIGN=TOP><td><span class='texte'>&nbsp;&nbsp;IV. Je sais identifier un texte ou un type de document&nbsp;&nbsp;</TD>		<TD ><NOBR><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>		<TD ><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>			</TR><TR VALIGN=TOP><td><span class='texte'>&nbsp;&nbsp;V. Je sais retrouver des informations dans un tableau&nbsp;&nbsp;</TD>		<TD ><NOBR><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>		<TD ><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>			</TR><TR VALIGN=TOP><td><span class='texte'>&nbsp;&nbsp;VI. Je comprends ce que je lis&nbsp;&nbsp;</TD>		<TD ><NOBR><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>		<TD ><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>			</TR><TR VALIGN=TOP><td><span class='texte'>&nbsp;&nbsp;VII. Je comprends ce que dit le texte&nbsp;&nbsp;</TD>		<TD ><NOBR><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>		<TD ><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>			</TR><TR VALIGN=TOP><td><span class='texte'>&nbsp;&nbsp;VIII. J'&eacute;value la richesse de mon vocabulaire&nbsp;&nbsp;</TD>		<TD ><NOBR><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>		<TD ><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>			</TR><TR VALIGN=TOP><td><span class='texte'>&nbsp;&nbsp;IX. Je sais reconnaître les niveaux de langue&nbsp;&nbsp;</TD>		<TD ><NOBR><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>		<TD ><span class='texte'>&nbsp;&nbsp;&nbsp;&nbsp;</TD>			</TR>	</TR>	</TR></TABLE><br>";
Et enfin, la variable que je veux afficher c'est
scoreexosl_1_enonce1 qui est dans la page fonction.js
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
function correctionsl_1_enonce1()
{
 
 
 var scoreexosl_1_enonce1 = 0;
 var difscoreexosl_1_enonce1 = 0;
 
// case 1
var en1 = document.getElementById("sl_1_enonce1_1").value;
var rep1 = document.getElementById("sl_1_sol1_1").value;
 
if(en1 == rep1)
{
document.getElementById("sl_1_enonce1_1").style.backgroundColor='green';
scoreexosl_1_enonce1 = scoreexosl_1_enonce1 +1;
}
else document.getElementById("sl_1_enonce1_1").style.backgroundColor='red';
//alert("Correct ");
//if(en1 != rep1)
//alert("inCorrect "); 
 
 
// case 2
var en2 = document.getElementById("sl_1_enonce1_2").value;
var rep2 = document.getElementById("sl_1_sol1_2").value;
 
if(en2 == rep2)
{
document.getElementById("sl_1_enonce1_2").style.backgroundColor='green';
scoreexosl_1_enonce1 = scoreexosl_1_enonce1 +1;
}
else document.getElementById("sl_1_enonce1_2").style.backgroundColor='red';
//alert("Correct ");
//if(en2 != rep2)
//alert("inCorrect "); 
 
// case 3
var en3 = document.getElementById("sl_1_enonce1_3").value;
var rep3 = document.getElementById("sl_1_sol1_3").value;
 
if(en3 == rep3)
{
document.getElementById("sl_1_enonce1_3").style.backgroundColor='green';
scoreexosl_1_enonce1 = scoreexosl_1_enonce1 +1;
}
else document.getElementById("sl_1_enonce1_3").style.backgroundColor='red';
//alert("Correct ");
//if(en3 != rep3)
//alert("inCorrect "); 
 
// case 4
var en4 = document.getElementById("sl_1_enonce1_4").value;
var rep4 = document.getElementById("sl_1_sol1_4").value;
 
if(en4 == rep4)
{
document.getElementById("sl_1_enonce1_4").style.backgroundColor='green';
scoreexosl_1_enonce1 = scoreexosl_1_enonce1 +1;
}
else document.getElementById("sl_1_enonce1_4").style.backgroundColor='red';
//alert("Correct ");
//if(en4 != rep4)
//alert("inCorrect "); 
 
// case 5
var en5 = document.getElementById("sl_1_enonce1_5").value;
var rep5 = document.getElementById("sl_1_sol1_5").value;
 
if(en5 == rep5)
{
document.getElementById("sl_1_enonce1_5").style.backgroundColor='green';
scoreexosl_1_enonce1 = scoreexosl_1_enonce1 +1;
}
else document.getElementById("sl_1_enonce1_5").style.backgroundColor='red';
//alert("Correct ");
//if(en5 != rep5)
//alert("inCorrect "); 
 
 
 
difscoreexosl_1_enonce1 = 5 - scoreexosl_1_enonce1;
alert("Ton score est de : "+scoreexosl_1_enonce1+"/5. Tu as donc fait : "+difscoreexosl_1_enonce1+" érreures.");
 
 
return scoreexosl_1_enonce1;
 
//alert("le champ a pour valeur : "+scoreexo);	
 // alert("le champ a pour valeur : "+obj1);
//	alert("le champ a pour valeur : "+obj2); 
//self.location.href="index.html?scoreexosl_1_enonce1="+scoreexosl_1_enonce1;
}
Si vous pouviez me donner une piste pour me debloquer,
Merci,
Benjamin