Variable

Résolu
lmb19 Messages postés 22 Date d'inscription lundi 21 novembre 2005 Statut Membre Dernière intervention 18 mai 2013 - 2 juil. 2006 à 23:28
lmb19 Messages postés 22 Date d'inscription lundi 21 novembre 2005 Statut Membre Dernière intervention 18 mai 2013 - 3 juil. 2006 à 23:09
Bonjour,

J'utilise actuellement le code :

function startX() {
document.chronoA.ctp.value=decompteur(1,7,2006,13,18,32);
document.chronoB.ctp.value=decompteur(3,7,2006,11,18,32);
document.chronoC.ctp.value=decompteur(28,7,2006,5,44,02);
document.chronoD.ctp.value=decompteur(28,6,2006,1,10,59);
setTimeout("startX()",1000);
}             

window.onload = startX;

4 chronos qui decomptent par rapport à une date.

Mon problème est que le nombre de chrono que je dois lancer varie.
Comme je debute en javascript, je ne sais pas comment rendre variable l'objet chrono.

en php, il me suffirait de mettre $chrono[$a] en incrementant la variable $a.

mais en javascript je n'arrive pas à trouver.

Si quelqu'un peut me guider

Merci

5 réponses

PROTECTIONNISTE Messages postés 67 Date d'inscription jeudi 30 janvier 2003 Statut Membre Dernière intervention 23 septembre 2008 1
3 juil. 2006 à 11:02
// tu crée un tableau
var decompte=new Array();
decompte[0]=new Array(1,7,2006,13,18,32);
decompte[1]=new Array(3,7,2006,11,18,32);
decompte[2]=new Array(28,7,2006,5,44,02);
decompte[3]=new Array(28,6,2006,1,10,59);





function startX() {
for (i=0;i<=decompte.length-1;i++)
{
// ta balise de réception devra avoir un ID nommé : chrono_(valeur)
document.getElementById("chrono_"+i).value=decompteur(decompte[i][0],decompte[i][1],decompte[i][2],decompte[i][3],decompte[i][4],decompte[i][5]);
}
setTimeout("startX()",1000);
}           
window.onload = startX;





Le probleme était que compteur récupérer tout dans la variable jour
3
PROTECTIONNISTE Messages postés 67 Date d'inscription jeudi 30 janvier 2003 Statut Membre Dernière intervention 23 septembre 2008 1
3 juil. 2006 à 02:05
Salut il te suffit de créer une boucle
comme ceci :

<script>
// tu crée un tableau
var decompte=new Array();
decompte[0]=new Array(1,7,2006,13,18,32);
decompte[1]=new Array(3,7,2006,11,18,32);
decompte[2]=new Array(28,7,2006,5,44,02);
decompte[3]=new Array(28,6,2006,1,10,59);



function startX() {
for (i=0;i<=decompte.length-1;i++)
{
// ta balise de réception devra avoir un ID nommé : chrono_(valeur)
document.getElementById("chrono_"+i).value=decompteur(decompte[i]);
}
setTimeout("startX()",1000);
}            
window.onload = startX;
</script>





Je ne sais pas si tu réceptionne dans un div en l'occurence pour mon test j'ai fais dans des input text

J'ai mis en document.getElementById je trouve que c'est plus propre ajoute ta fonction decompteur au script que je t'ai fais et ça devrais fonctionner
0
lmb19 Messages postés 22 Date d'inscription lundi 21 novembre 2005 Statut Membre Dernière intervention 18 mai 2013 1
3 juil. 2006 à 09:51
Merci de ta réponse.

J'ai fais le test en rajoutant la fonction decompte :
<html>
<head>
<script>

function decompteur(jour,mois,annee,heure,minute,seconde) {
       Resultat = "";
       now = new Date();
       goal = new Date(annee,mois-1,jour,heure,minute,seconde);

       ts = Math.abs((now.getTime()/1000)-(goal.getTime()/1000));

        fjour = Math.floor(ts/(3600*24));
        if(fjour<1) {
                Resultat = "";
        } else {
                Resultat = fjour + "J";
        }

        ts = ts - (fjour*24*3600);
        fheure = Math.floor((ts/3600));
        if(fheure<10) {
                Resultat += " 0" + fheure + ":";
        } else {
                Resultat += " " + fheure + ":";
        }

        ts = ts - (fheure*3600);
        minutes = Math.floor((ts/60));
        if(minutes<10) {
                Resultat += "0" + minutes + ":";
        } else {
                Resultat += minutes + ":";
        }

        ts = ts - (minutes*60);
        fseconde = Math.floor(ts);
        if(fseconde<10) {
                Resultat += "0" + fseconde
        } else {
                Resultat += fseconde
        }

        return Resultat
}

// tu crée un tableau
var decompte=new Array();
decompte[0]=new Array(1,7,2006,13,18,32);
decompte[1]=new Array(3,7,2006,11,18,32);
decompte[2]=new Array(28,7,2006,5,44,02);
decompte[3]=new Array(28,6,2006,1,10,59);

function startX() {
for (i=0;i<=decompte.length-1;i++)
{
// ta balise de réception devra avoir un ID nommé : chrono_(valeur)
document.getElementById("chrono_"+i).value=decompteur(decompte[i]);
}
setTimeout("startX()",1000);
}           
window.onload = startX;
</script>

</head>

</html>

Quand je l'execute, les champs input m'affichent ceci :

On dirait que les données ne sont pas transferées à la fonction decompte ?
0
lmb19 Messages postés 22 Date d'inscription lundi 21 novembre 2005 Statut Membre Dernière intervention 18 mai 2013 1
3 juil. 2006 à 09:54
Mon copier coller n'a pas marché, je disais :

Quand je l'execute, les champs input m'affichent ceci :
NaNJ NaN:NaN:NaN  NaNJ NaN:NaN:NaN  NaNJ NaN:NaN:NaN  NaNJ NaN:NaN:NaN 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lmb19 Messages postés 22 Date d'inscription lundi 21 novembre 2005 Statut Membre Dernière intervention 18 mai 2013 1
3 juil. 2006 à 23:09
Merci pour tout
0
Rejoignez-nous