Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1011 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Problème de décrémentation en javascript

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème de décrémentation en javascript

n°1828356
axelandre
Posté le 17-12-2008 à 09:59:55  profilanswer
 

Bonjour à tous,
 
Alors voilà mon souci. J'ai un tableau avec des données dedans. Je souahite extraire les données de ce tableau. pour cela j'utilise une boucle for. Si je le fait en commençant par i=0 jusqu'à ce que i soit égale à la taille du tableau, il n'y a pas de problème. mais mon souci c'est que je souahite commencer l'extraction des données en commençant par la fin donc voici ce que j'ai fait... mais ça ne marche pas et je ne comprend pas pourquoi !
 

Code :
  1. for(i = tab_entree.length; i >= 0; i--){
  2.    document.write(i + "<br />" )
  3. };


 
Mais cette boucle ne me sort rien alors que les cellules du tableau tab_entree sont remplies (tableau allant de l'indice 0 jusqu'à l'indice 20).
 
Si quelqu'un a la solution à mon problème je suis preneur!
 
merci à tous pour votre aide

mood
Publicité
Posté le 17-12-2008 à 09:59:55  profilanswer
 

n°1828358
FlorentG
Posté le 17-12-2008 à 10:12:21  profilanswer
 

C'est quoi tab_entree ?

n°1828363
axelandre
Posté le 17-12-2008 à 10:26:01  profilanswer
 

Oups pardon tab_entree c'est le tableau en question que je souhaite parcourir.il est déclaré ainsi (il va jusqu'à tab_entree[0]):
 

Code :
  1. var tab_entree = new Array();
  2.   tab_entree[20] = "option value='actualites_actions_200901.html ";
  3.   tab_entree[19] = "option value='actualites_actions_200812.html ";
  4.   tab_entree[18] = "option value='actualites_actions_200810.html ";
  5.   tab_entree[17] = "option value='actualites_actions_200809.html ";
  6.                                        ...


 
Merci

n°1828427
axelandre
Posté le 17-12-2008 à 12:16:12  profilanswer
 

Effectivement ça fonctionne.
 
mais en fait ma boucle est plus compliquée que ça en réalité.
 
le truc c'est qu'elle fonctionne très bien en incrémentant mais dès que je passe en décrémentation plus rien ne s'affiche!
 
Et ça me rend fou!
 
Voici mon script en entier (je sais, il est pas optimisé et un peu bourin !) :
 

Code :
  1. function affiche_liste(){
  2.  var tab_mois = new Array();
  3.   tab_mois[0] = "Janvier";
  4.   tab_mois[1] = "Février";
  5.   tab_mois[2] = "mars";
  6.   tab_mois[3] = "Avril";
  7.   tab_mois[4] = "Mai";
  8.   tab_mois[5] = "Juin";
  9.   tab_mois[6] = "Juillet";
  10.   tab_mois[7] = "Août";
  11.   tab_mois[8] = "Septembre";
  12.   tab_mois[9] = "Octobre";
  13.   tab_mois[10] = "Novembre";
  14.   tab_mois[11] = "Décembre";
  15.  var tab_entree = new Array();
  16.   tab_entree[20] = "option value='actualites_actions_200901.html ";
  17.   tab_entree[19] = "option value='actualites_actions_200812.html ";
  18.   tab_entree[18] = "option value='actualites_actions_200810.html ";
  19.   tab_entree[17] = "option value='actualites_actions_200809.html ";
  20.   tab_entree[16] = "option value='actualites_actions_200807.html ";
  21.   tab_entree[15] = "option value='actualites_actions_200806.html ";
  22.   tab_entree[14] = "option value='actualites_actions_200805.html ";
  23.   tab_entree[13] = "option value='actualites_actions_200804.html ";
  24.   tab_entree[12] = "option value='actualites_actions_200803.html ";
  25.   tab_entree[11] = "option value='actualites_actions_200801.html ";
  26.   tab_entree[10] = "option value='actualites_actions_200712.html ";
  27.   tab_entree[9] = "option value='actualites_actions_200711.html ";
  28.   tab_entree[8] = "option value='actualites_actions_200709.html ";
  29.   tab_entree[7] = "option value='actualites_actions_200707.html ";
  30.   tab_entree[6] = "option value='actualites_actions_200705.html ";
  31.   tab_entree[5] = "option value='actualites_actions_200704.html ";
  32.   tab_entree[4] = "option value='actualites_actions_200703.html ";
  33.   tab_entree[3] = "option value='actualites_actions_200702.html ";
  34.   tab_entree[2] = "option value='actualites_actions_200701.html ";
  35.   tab_entree[1] = "option value='actualites_actions_200610.html ";
  36.   tab_entree[0] = "option value='actualites_actions_200609.html ";
  37.   // Permet de récupérer le nom de la page
  38.   var urlCourant = document.location.pathname;//récupère le chemin sans l'url web  
  39.   var indiceDepart = urlCourant.lastIndexOf('_')+1; // Prend le dernier "_" Plus 1 car on ne veut pas le '_'  
  40.   var indiceArrivee = urlCourant.length-5; // Moins les 5 caractères de l'extension.  
  41.   var nomPage = urlCourant.substring(indiceDepart, indiceArrivee);/*On récupère ce qui se trouve entre le dernier "_" et le ".html" */
  42.   //Fin récupération nom de la page
  43.   for(i = tab_entree.length; i >= 0 ; i++){
  44.    var fin = "</option>";
  45.    var selected = ">";
  46.    /*Récupération de l'année*/
  47.    var anneedepart = tab_entree[i].lastIndexOf('_')+1; // Prend le dernier "_" Plus 1 car on ne veut pas le '_'  
  48.    var anneearrivee = tab_entree[i].length-8; // Moins l'espace + le mois caractères + les 5 caractères de l'extension.  
  49.    var annee = tab_entree[i].substring(anneedepart, anneearrivee);/*On récupère ce qui se trouve entre le dernier "_" et le "mois.html" */
  50.    /*Récupération du mois*/
  51.    var moisdepart = tab_entree[i].lastIndexOf('_')+5; // Prend le dernier "_" Plus 1 (_) + l'année  
  52.    var moisarrivee = tab_entree[i].length-6; // Moins l'espace + les 5 caractères de l'extension.  
  53.    var mois = tab_entree[i].substring(moisdepart, moisarrivee);/*On récupère ce qui se trouve entre l'année et le ".html" */
  54.    var anneemois = annee + mois;
  55.    var debut = "<option value='actualites_actions_" + anneemois + ".html'";
  56.    if(anneemois == nomPage){
  57.     var selected = " selected='selected'>";
  58.    }
  59.    //Permet d'enlever le zero des mois inf à octobre afin de les coordonner avec le tab_mois
  60.    if(mois < 10){
  61.     var moissanszero = mois.substring(1, 2);
  62.     var moislettre = moissanszero-1;//on enlève un pour etre concordant avec le tab_mois
  63.     document.write(debut);
  64.     document.write(selected);
  65.     document.write(tab_mois[moislettre] + "   " + annee + fin + "<br />" );
  66.     //document.write(i);
  67.    }
  68.    else{
  69.     var moislettre = mois-1;
  70.     document.write(debut);
  71.     document.write(selected);
  72.     document.write(tab_mois[moislettre] +  "   " + annee + fin + "<br />" );
  73.     //document.write(i);
  74.    }
  75.   }
  76. }


 
Voilou. J'espère que ça va vous aider!
 
merci beaucoup

n°1828487
axelandre
Posté le 17-12-2008 à 14:19:11  profilanswer
 

Mais bien sûr!  
 
Quelle erreur idiote !
 
J'ai l'outil firebug de FireFox mais le soucis c'est que à mon boulot, il m'est impossible d'installer FireFox, donc du coup, je n'ai pas accés à l'outil!
 
Mais merci mille fois pour ton aide Fred82 !
 
j'ai effectuer la correction et ça marche nikel !
 
merci encore !!!

n°1828749
gatsu35
Blablaté par Harko
Posté le 17-12-2008 à 20:18:55  profilanswer
 

dis moi ce bout de code c'est pour ton boulot ?
ou pas ?
 
et puis c'est quoi cette connerie d'interdiction d'installer firefox :(
récupère portable Firefox que tu colles sur ta clé USB et le pb est réglé :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Problème de décrémentation en javascript

 

Sujets relatifs
probleme avec icones[Py2exe] Problème de compilation
SQL -> Probleme contraintes et relations, je bloquePetit problème de script (echo)
Problème sur ScilabProblème image liée soulignée ou non ?
Problème de lien interne[Javascript] Neige (Firefox et IE 7)
Javascript neige : pas sur toute la page[SPIP][RESOLU] Problème pour créer un nouvel article
Plus de sujets relatifs à : Problème de décrémentation en javascript


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR