idLigne ne fonctionne pas je ne sais pas pourquoi

Pour toutes les discussions javascript, jQuery et autres frameworks
Répondre
PastoFerrari
Messages : 5
Enregistré le : 22 févr. 2024, 03:18

idLigne ne fonctionne pas je ne sais pas pourquoi

Message par PastoFerrari » 25 févr. 2024, 19:33

la seule partie du code qui fonctionne est le premier paragraphe

function cal(idLigne){

let Eval1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval2 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Moy = document.getElementById(idLigne).querySelector(".Moyenne").value = (Eval1+Eval2)/2;
let Coef = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let Total = document.getElementById(idLigne).querySelector(".Total").value = (Moy*Coef);
let Appr = document.getElementById(idLigne).querySelector(".Appreciation").value;

let Eval1L1B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L2B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L3B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L4B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L5B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L6B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L7B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L8B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L9B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L10B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L11B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L12B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let Eval1L13B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval1").value);
let TotalEval1 = document.getElementById(idLigne).querySelector(".TotalEval1").value;
TotalEval1 = (Eval1L1B1+Eval1L2B1+Eval1L3B1+Eval1L4B1+Eval1L5B1+Eval1L6B1+Eval1L7B1+Eval1L8B1+Eval1L9B1+Eval1L10B1+Eval1L11B1+Eval1L12B1+Eval1L13B1);

let Eval2L1B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L2B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L3B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L4B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L5B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L6B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L7B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L8B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L9B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L10B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L11B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L12B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let Eval2L13B1 = parseFloat(document.getElementById(idLigne).querySelector(".Eval2").value);
let TotalEval2 = document.getElementById(idLigne).querySelector(".TotalEval2").value;
TotalEval2 = (Eval2L1B1+Eval2L2B1+Eval2L3B1+Eval2L4B1+Eval2L5B1+Eval2L6B1+Eval2L7B1+Eval2L8B1+Eval2L9B1+Eval2L10B1+Eval2L11B1+Eval2L12B1+Eval2L13B1);

let MoyL1B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL2B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL3B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL4B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL5B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL6B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL7B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL8B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL9B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL10B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL11B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL12B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let MoyL13B1 = parseFloat(document.getElementById(idLigne).querySelector(".Moyenne").value);
let TotalMoy = document.getElementById(idLigne).querySelector(".TotalMoyenne").value;
TotalMoy = (MoyL1B1+MoyL2B1+MoyL3B1+MoyL4B1+MoyL5B1+MoyL6B1+MoyL7B1+MoyL8B1+MoyL9B1+MoyL10B1+MoyL11B1+MoyL12B1+MoyL13B1);

let CoefL1B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL2B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL3B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL4B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL5B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL6B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL7B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL8B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL9B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL10B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL11B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL12B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let CoefL13B1 = parseFloat(document.getElementById(idLigne).querySelector(".Coef").value);
let TotalCoef = document.getElementById(idLigne).querySelector(".TotalCoef").value;
TotalCoef = (CoefL1B1+CoefL2B1+CoefL3B1+CoefL4B1+CoefL5B1+CoefL6B1+CoefL7B1+CoefL8B1+CoefL9B1+CoefL10B1+CoefL11B1+CoefL12B1+CoefL13B1);

let TotalL1B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL2B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL3B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL4B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL5B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL6B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL7B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL8B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL9B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL10B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL11B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL12B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalL13B1 = parseFloat(document.getElementById(idLigne).querySelector(".Total").value);
let TotalTotal = document.getElementById(idLigne).querySelector(".TotalTotal").value;
TotalTotal = (TotalL1B1+TotalL2B1+TotalL3B1+TotalL4B1+TotalL5B1+TotalL6B1+TotalL7B1+TotalL8B1+TotalL9B1+TotalL10B1+TotalL11B1+TotalL12B1+TotalL13B1);

let CoefTotal = document.getElementById(idLigne).querySelector(".Coef").value = (TotalCoef);
let PointsTotal= document.getElementById(idLigne).querySelector(".Points").value = (TotalTotal);
let Moyenne = document.getElementById(idLigne).querySelector(".Moyenne").value = (TotalTotal/TotalCoef);

// Couleur en fonction de la note
if(Eval1 < 10){
document.getElementById(idLigne).querySelector(".Eval1").style.backgroundColor = "gray";
}else{
document.getElementById(idLigne).querySelector(".Eval1").style.backgroundColor = "white";
}

if(Eval2 < 10){
document.getElementById(idLigne).querySelector(".Eval2").style.backgroundColor = "gray";
}else{
document.getElementById(idLigne).querySelector(".Eval2").style.backgroundColor = "white";
}

if(Moy < 10){
document.getElementById(idLigne).querySelector(".Moyenne").style.backgroundColor = "gray";
}else{
document.getElementById(idLigne).querySelector(".Moyenne").style.backgroundColor = "white";
}

// appreciation

if(Moy <= 10 ){
document.getElementById(idLigne).querySelector(".Appreciation").value ="N.A"
}else if(Moy >= 10 & Moy <= 14){
document.getElementById(idLigne).querySelector(".Appreciation").value ="E.C.A"
}else if(Moy >= 15 & Moy <= 17){
document.getElementById(idLigne).querySelector(".Appreciation").value ="A"
}else if(Moy >= 17 & Moy <= 20){
document.getElementById(idLigne).querySelector(".Appreciation").value ="E"
}
return(Moy, Total, TotalEval1, TotalEval2, TotalMoy, TotalCoef, TotalTotal, CoefTotal, PointsTotal);

}

je ne sais pas pourquoi le code ne s'execute pas a partir des sommes pourtant j'ai bien appeler le fonction dans le html


<tr id="Ligne14B1">

<td id="Dictee">TOTAL</td>

<td> <input type="text" onkeyup="cal('Ligne14B1')" size="3" class="TotalEval1" /> </td>
<td> <input type="text" onkeyup="cal('Ligne14B1')" size="4" class="TotalEval2" /> </td>
<td> <input type="text" onkeyup="cal('Ligne14B1')" size="4" class="TotalMoyenne" /> </td>
<td> <input type="text" onkeyup="cal('Ligne14B1')" size="4" class="TotalCoef" /> </td>
<td> <input type="text" onkeyup="cal('Ligne14B1')" size="4" class="TotalTotal" /> </td>
</tr>

EugeneStone
Messages : 1
Enregistré le : 27 févr. 2024, 10:49

Re: idLigne ne fonctionne pas je ne sais pas pourquoi

Message par EugeneStone » 27 févr. 2024, 10:56

Il faut doncsuika game que vous passiez un identifiant différent pour chaque ligne, par exemple Ligne1B1, Ligne2B1, etc. Vous pouvez aussi utiliser une boucle for pour parcourir les lignes du tableau et appeler la fonction avec l'identifiant correspondant.

herringburden
Messages : 2
Enregistré le : 28 févr. 2024, 07:38

Re: idLigne ne fonctionne pas je ne sais pas pourquoi

Message par herringburden » 28 févr. 2024, 07:40

EugeneStone a écrit :
27 févr. 2024, 10:56
Il faut donc que vous passiez un identifiant différent pour chaque ligne, par exemple Ligne1B1, Ligne2B1, etc. Vous pouvez aussi utiliser une boucle for pour parcourir les lignes du tableau et appeler la fonction avec l'identifiant correspondant.doodle jump
Bonjour, après avoir utilisé la boucle for, que dois-je faire ensuite ?

jumlouh
Messages : 1
Enregistré le : 08 mars 2024, 04:44

Re: idLigne ne fonctionne pas je ne sais pas pourquoi

Message par jumlouh » 08 mars 2024, 04:48

Bonjourgeometry dash subzero, après avoir utilisé la boucle for, que dois-je faire ensuite ?
Continuez simplement la boucle. Que veux-tu dire?

dominic
Messages : 1
Enregistré le : 08 mars 2024, 14:03

Re: idLigne ne fonctionne pas je ne sais pas pourquoi

Message par dominic » 11 mars 2024, 05:48

Bonjour,

Effectivement, l'utilisation d'identifiants uniques pour chaque ligne, comme Ligne1B1, Ligne2B1, est une pratique recommandée pour maintenir la clarté et l'organisation de votre code. C'est un peu comme la gestion des tâches en tant qu'auto-entrepreneur qui est d'attribuer des références claires à chaque activité facilite la traçabilité et la gestion de votre travail au quotidien.

Répondre