IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Modification d'une page HTML non prise en compte


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Homme Profil pro
    bricoleur
    Inscrit en
    Octobre 2014
    Messages
    406
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activit� : bricoleur
    Secteur : Alimentation

    Informations forums :
    Inscription : Octobre 2014
    Messages : 406
    Par d�faut Modification d'une page HTML non prise en compte
    Bonjour,

    Je ne comprends pas le fonctionnement d'une page HTML qui vient d'�tre modifi�e.

    Au d�part, une page HTML comporte 4 boutons d�finis ainsi:
    Code HTML : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    <div>
    <button class="button ex1" id="btn0" onclick= "action(0,this,0)">Interrupteur 1</button>
    <button class="button ex1" id="btn1" onclick= "action(1,this,0)">Interrupteur 2</button>
    <button class="button ex1" id="btn2" onclick= "action(2,this,0)">Interrupteur 3</button>
    <button class="button ex1" id="btn3" onclick= "action(3,this,0)">Interrupteur 4</button>
    </div>
    A ce niveau tout va bien.

    Le client d�sirant modifier la qualit� de btn2 par exemple, fait une demande au serveur qui lui envoie une page de configuration. Apr�s avoir modifi� la configuration, le client l'envoie au serveur qui en retour modifie la page HTML selon la demande. Ce qui donne par exemple:
    Code HTML : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    <div>
    <button class="button ex1" id="btn0" onclick= "action(0,this,0)">Interrupteur 1</button>
    <button class="button ex1" id="btn1" onclick= "action(1,this,0)">Interrupteur 2</button>
    <button class="button ex1" id="btn2" onclick= "action(2,this,1)">Poussoir 3</button>
    <button class="button ex1" id="btn3" onclick= "action(3,this,0)">Interrupteur 4</button>
    </div>
    Donc, en appuyant sur btn2, la fonction "action" devrait recevoir en param�tre (2,this,1).

    Or, et c'est l� mon probl�me, la fonction Javascript re�oit (2,this,0)!

    Si quelqu'un a une id�e? Merci

  2. #2
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    du cache? => ctrl+F5
    Ma page Developpez - Mon Blog 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

    Venez sur le Chat de D�veloppez !

  3. #3
    Membre �clair�
    Homme Profil pro
    bricoleur
    Inscrit en
    Octobre 2014
    Messages
    406
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activit� : bricoleur
    Secteur : Alimentation

    Informations forums :
    Inscription : Octobre 2014
    Messages : 406
    Par d�faut
    N'ayant pas de solution � ce probl�me incompr�hensible, j'ai trouv� une parade:
    j'ai ajout� un tag value dans la d�finition de mon button; je l'adapte au moment de la modification de ma page

    Code HTML : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    HTML:<div>
    <button class="button ex1" id="btn0" value="Interrupteur " onclick= "action(0,this,0)">Interrupteur 1</button>
    <button class="button ex1" id="btn1" value="Poussoir " onclick= "action(1,this,1)">Poussoir 2</button>
    <button class="button ex1" id="btn2" value="Interrupteur " onclick= "action(2,this,0)">Interrupteur 3</button>
    <button class="button ex1" id="btn3" value="Interrupteur " onclick= "action(3,this,0)">Interrupteur 4</button>
    </div>

    et maintenant il me suffit de lire par document.getElementById("btnx").value pour faire fonctionner correctement ma fonction.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    JAVASCRIPT:var msg = "";
    	  var tempo = document.getElementById("btn" + num).value;
          if (tempo=="Poussoir") {
            msg = "/btn" + num + "/pou!";
          }
          else {
            msg = "/btn" + num + "/non!";
          }
          var xhr = new XMLHttpRequest();
          xhr.open("POST", "/");
          xhr.send(msg);
    Je ne sais pas si cela peut servir � quelqu'un?

  4. #4
    Expert confirm�
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Ao�t 2003
    Messages
    3 684
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activit� : danseur

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 3 684
    Par d�faut
    Le code que tu montres est incomplet donc on n'a aucune chance de trouver l'origine du probl�me, � part en jouant aux devinettes...
    O� est ta fonction action(), avec les 3 arguments attendus?

  5. #5
    Membre �clair�
    Homme Profil pro
    bricoleur
    Inscrit en
    Octobre 2014
    Messages
    406
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activit� : bricoleur
    Secteur : Alimentation

    Informations forums :
    Inscription : Octobre 2014
    Messages : 406
    Par d�faut
    La voici maintenant sachant qu'� l'origine c'est la variable pou que je testais et qui ne fonctionnait pas.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    function action(num, btn, pou) {
          // *******************toggle class***************
          var myButton = btn;
    	  var myPou = pou;
          var className = " " + myButton.className + " ";
          if (~className.indexOf(" ex1 ")) {
            btn.className = className.replace(" ex1 ", " ex2 ");
          } 
          else {
            btn.className = className.replace(" ex2 ", " ex1 ");
          }
          // *******************fin toggle class***********
          var msg = "";
    	  var tempo = document.getElementById("btn" + num).value;
          if (tempo=="Poussoir") {      /* if(pou) { */
            msg = "/btn" + num + "/pou!";
          }
          else {
            msg = "/btn" + num + "/non!";
          }
          var xhr = new XMLHttpRequest();
          xhr.open("POST", "/");
          xhr.send(msg);
        }

  6. #6
    Expert confirm�
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Ao�t 2003
    Messages
    3 684
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activit� : danseur

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 3 684
    Par d�faut
    Voil� un exemple de ce que tu peux faire:

    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    <div>
    <button class="button ex1" id="btn0">Interrupteur 1</button>
    <button class="button ex1" id="btn1">Poussoir 2</button>
    <button class="button ex1" id="btn2">Interrupteur 3</button>
    <button class="button ex1" id="btn3">Interrupteur 4</button>
    </div>

    Code javascript : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    // Tu sélectionnes les boutons de la classe voulue
    document.querySelectorAll("[class^=button]").forEach(v=>{
    	// pour chaque bouton cliqué
    	v.addEventListener("click",()=>{
    		// tu toggles sa classe
    		v.className=v.className.indexOf("ex1") ? "button ex2" : "button ex1";
    		// tu construis ton message selon le numéro et le type du bouton
    		const msg= v.textContent.indexOf("Poussoir")==-1 ?
    		"/btn" + v.id.substring(3) + "/non!":
    		"/btn" + v.id.substring(3) + "/pou!";
    		// tu envoies ta requête
    		const xhr = new XMLHttpRequest();
    		xhr.open("POST", "/");
    		xhr.send(msg);
    	})
    })

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Modification d'une page Html en temps r�el avec pHp.
    Par Destiny-06 dans le forum Langage
    R�ponses: 5
    Dernier message: 12/06/2014, 15h44
  2. Modification d'une page HTML
    Par pmloik dans le forum Android
    R�ponses: 10
    Dernier message: 13/08/2013, 15h49
  3. page 'active' non prise en compte ds le menu
    Par Teddy7 dans le forum Mise en page CSS
    R�ponses: 8
    Dernier message: 22/06/2008, 09h02
  4. [WinDev 9] Modification d'une page HTML
    Par JohanProg dans le forum WinDev
    R�ponses: 1
    Dernier message: 13/09/2006, 16h18
  5. Modification d'un fichier php non prise en compte sans red�marrage d'easyphp
    Par michmich dans le forum G�n�ral JavaScript
    R�ponses: 12
    Dernier message: 20/08/2006, 22h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo