Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/01/2012, 17h07   #1
Invité régulier
 
Inscription : décembre 2010
Messages : 22
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 22
Points : 5
Points : 5
Par défaut Appel de fonction avec parametre dans un setTimeOut

Bonjour à tous,

voici le code qui me tourmente depuis quelques heures, son objectif est de
1/ colorier un élement text (input html) en gris,
2/ appeler une url via un get et récupérer une réponse,
3/ selon la réponse OK/KO colorier l'élement text en vert ou en rouge,
4/ attendre 1s puis colorier l'element text en blanc.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function update_text(objectName)
{
    document.getElementById(objectName).style.color="white";
    document.getElementById(objectName).style.backgroundColor="grey";
 
    $.get("proxy.php",{},
        function(data)
        { 
            ret = data; 
            if(data=="OK") {
               document.getElementById(objectName).style.backgroundColor="green"; 
            }
            else {
                document.getElementById(objectName).style.backgroundColor="red"; 
            }
            var t = setTimeout("update_text_clean()",1000);
         });
}
 
function update_text_clean()
{
    alert("bip");
}
jusque là, tout se passe bien, le bip apparait.

Seulement pour colorier l'élement text, j'ai besoin de connaitre son nom, donc de le passer en parametre à update_text_clean.

j'ai donc modifié mon code comme suit:

...
Code :
var t = setTimeout("update_text_clean("+objectName+")",1000);
...
Code :
1
2
3
4
5
 
function update_text_clean(objectName)
{
    alert("bip"+objectName);
}
sans succès.

Je suis prenneur de toute conseil, avis... pour résoudre cela,

d'avance merci,

cdt,

jfv
jfv.work est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2012, 17h11   #2
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 079
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 079
Points : 45 213
Points : 45 213
setTimeout et setInterval acceptent en principe un autre paramètre qui devrait être les arguments à passer à la fonction, mais cela reste de la théorie

en pratique il faut passer par une closure

Code :
var t = setTimeout(function(){update_text_clean(objectName)},1000);
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 26/01/2012, 17h16   #3
Invité régulier
 
Inscription : décembre 2010
Messages : 22
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 22
Points : 5
Points : 5
Merci beaucoup, une réponse en moins de 4mn et qui fonctionne en plus
jfv.work est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h39.


 
 
 
 
Partenaires

Hébergement Web