Javascript

Fermé
kathou Messages postés 79 Date d'inscription jeudi 4 septembre 2003 Statut Membre Dernière intervention 16 janvier 2004 - 10 nov. 2003 à 17:03
kathou Messages postés 79 Date d'inscription jeudi 4 septembre 2003 Statut Membre Dernière intervention 16 janvier 2004 - 10 nov. 2003 à 18:54
Bonjour à tous.

J'ai un petit problème j'ai fait une fonction en javascript qui ouvre des rapports.

La fonction en général fonctionne très bien, cependant dans ma première boucle FOR j'accède seulement au premier item je n'arrive pas à sélectionner les autres.

function VerifierTout(){
var rapport;
var i = 0;

if( VerifierTypeRapport()){

if( VerifierMois()){

if( VerifierAnnee()){

if( VerifierDirection()){

if( VerifierUnite()){

if( VerifierCentreCout()){

if(direction == "" && unite == "" && centreCout == ""){
alert("Vous devez choisir un secteur d'activité");
document.genre.niveau1.focus();
}else{

if(document.genre.niveau1.checked){
rapport=moisChoisit+document.genre.niveau1.value+chaine;
open("D:/Documents and Settings/CL0250/Mes documents/Mes sites Web/monsiteweb17/images/planificationControle/" + rapport);

}else{

for(var i = 0; i < document.genre.niveau2.length; i++){
if(document.genre.niveau2[i].checked){
rapport= moisChoisit + unite + "/" + unite + " - " + chaine;
open("D:/Documents and Settings/CL0250/Mes documents/Mes sites Web/monsiteweb17/images/planificationControle/" + rapport);

}else{
for(var i = 0; i < document.genre.niveau3.length; i++){
if(document.genre.niveau3[i].checked){
rapport=moisChoisit+centreCout+chaine;
open("D:/Documents and Settings/CL0250/Mes documents/Mes sites Web/monsiteweb17/images/planificationControle/"+ rapport);

}

}
}

}

}
}

}
}
}
}
}
}

return true;
}

J'ai vérifier avec des alert() j'ai vérifier et revérifier les accolades et elles sont toutes à la bonne place je crois.

Si quelqu'un peut m'aider à trouver ce qui cloche ça serait très apprécier.

En passant

direction = niveau1
unite = niveau2
centreCout = niveau3

Tous fonctionne excepté les 2 à 7 élément de ma première boucle For j'arrive à voir seulement le premier. Pour tout le reste ça fonctionne à merveille.

Merci d'avance
Kathou

3 réponses

Nettogrof Messages postés 521 Date d'inscription lundi 29 septembre 2003 Statut Membre Dernière intervention 8 décembre 2005 672
10 nov. 2003 à 18:26
c'est fort simple ton problème voici un résumé de ton code
for(var i=0; i < ... ; i++){
   if(){
   ...
   }else{
      for(var i=0; i< ... ; i++){
   }
}


Il faut utiliser des nom des variables significative car là tu utilise deux fois la variable i.

Remplace-en une pour h par exemple.

Nettogrof tseb era seiromem emoS
0
kathou Messages postés 79 Date d'inscription jeudi 4 septembre 2003 Statut Membre Dernière intervention 16 janvier 2004 24
10 nov. 2003 à 18:51
Je suis désolé Carl mais le problème ne se situe pas là je crois. Parce que lorsque je change l'indice c'est vrai que je peux accéder à mes rapports. Mais le changement d'indice me cause une erreur sur mon autre boucle For (niveau3). Au lieu d'avoir 1 seul rapport qui ouvre en niveau 3 j'en ai environ 10 et je suis supposé en avoir juste 1.

D'après moi l'indice i n'a pas rapport car je la réinitialise à chaque fois.

Si tu as une adresse e-mail je peux t'envoyer le projet au complet pour que tu vois mieux mon problème

Kathou
0
kathou Messages postés 79 Date d'inscription jeudi 4 septembre 2003 Statut Membre Dernière intervention 16 janvier 2004 24
10 nov. 2003 à 18:54
Je viens de me rendre compte qu'il n'entre pas non plus dans mon
if(direction == "" && unite == "" && centreCout==""){
alert(....);
}
0