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

Arduino Discussion :

Modifier un élément de la page HTML présent chez le client.


Sujet :

Arduino

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 Modifier un élément de la page HTML présent chez le client.
    Bonjour à nouveau pour encore un problème de compréhension certainement:
    J'ai créé une page HTML que j'envoie à un client sur demande.
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    <!DOCTYPE html>
    <html lang="fr">
      <head>
        <meta charset="utf-8">
        <title>Commande Leds</title>
      </head>
      <body>
        <h1>Etat des leds</h1>
          <h2 id="etatLed1", Led1 éteinte></h2>
          <h2 id="etatLed2", Led2 éteinte></h2>
        <h1>Boutons de commande</h1>
        <button onclick="appServeur('/led1',actionLed1)">Basculer Led1</button>
        <button onclick="appServeur('/led2',actionLed2)">Activation Led2</button>
        <script>
          function appServeur(url,cFonction){
            var xhttp = new XMLHttpRequest();
            xhttp.onreadystatechange = function(){
              if(this.readyState==4 && this.status==200){
                cFonction(this);
              }
            };
            xhttp.open("GET", url, true);
            xhttp.send();
          }
          function actionLed1(xhttp){
            document.getElementById("etatLed1").innerHTML = "LED1 " + xhttp.responseText;
          }
          function actionLed2(xhttp){
            document.getElementById("etatLed2").innerHTML = "LED2 " + xhttp.responseText;
          }
        </script>
      </body>
    </html>
    J'ai créé des API pour contrôler les éléments:
    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
    void handleAPI(){
      String reponse;
      if(serveur.args()>0){
        if(serveur.argName(0) == "Etat" && serveur.args() == 1){
          if(serveur.arg(0) == "Led1") reponse = led1.etat? "allumee" : "eteinte";
          else if((serveur.arg(0) == "Led2")) reponse = led2.etat? "cligne" : "Eteinte";
          else reponse = " Commande inconnue";
        }
        else if(serveur.args() == 3 && serveur.argName(0) == "Cmd" && serveur.arg(0)=="Led2" &&
                serveur.argName(1) == "action" && serveur.arg(1) == "ON" &&
                serveur.argName(2) == "val" &&
                serveur.arg(2).toInt() > 299 && serveur.arg(2).toInt() < 2001){
                  cligneOn=true;
                  duree = serveur.arg(2).toInt();
                  reponse = "Led2 en clignotement";
        }
        else reponse = "Argument inconnu";
      }
      else reponse= "API sans parametre";
    Je voudrais pouvoir envoyer une commande en fonction de la réponse du client, pour modifier les éléments h2 par exemple, sans recharger toute la page.
    Je ne vois pas comment faire car si je refais un send(200,...) j'efface la page?

  2. #2
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 921
    Par défaut
    Il faudrait lire des tutos sur AJAX et le DOM

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Modifier un objet d'une page HTML en JS
    Par PMA68 dans le forum jQuery
    Réponses: 1
    Dernier message: 05/01/2018, 10h49
  2. Réponses: 4
    Dernier message: 28/07/2010, 16h36
  3. [DOM]Supprimer des éléments d'une page HTML
    Par witch dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 05/02/2009, 16h37
  4. [POO] Simuler envoi de click sur élément dans une page HTML
    Par opsi dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 09/09/2008, 13h24
  5. Connaitre tout les éléments d'une page html
    Par flo_k dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/04/2007, 14h18

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