www.elektronik.si
ESP: HTML stran s spremenljivkami

www.elektronik.si -> Arduino sekcija

Avtor: damoKraj: Krško PrispevekObjavljeno: Čet Sep 27, 2018 7:02 am    Naslov sporočila:  ESP: HTML stran s spremenljivkami
----------------------------------------------------------------------------
Ojla,

imam vprašanje iz HTML.

Iščem bolj eleganten način, kako z ESP prikazati HTML stran, ki vsebuje statični text in vrednosti spremenljivk.

Do sedaj imam deklariran global "String s;", ki mu na začetku (v setup{}) ) rezerviram mesto z "s.reserve(2500);". Nato sestavim string v obliki html kode (fiksni texti so v romu z uporabo F("blablabla") in pošljem clientu.

Idealno bi bilo, če bi lahko poslal fiksni html, nato pa še spremenljivi del, ki bi vseboval samo vrednosti spremenljivk. Poskušam z uporabo "id" v html, pa me zanima še kakšna (enostavna) varianta.

Vse to delam zato, da bi sprostil malo rama, ki mi ga je požrlo že 75%, kar je že skoraj maksimum, da nimaš težav s stabilnostjo.

Avtor: tilz0RKraj: Črnomelj PrispevekObjavljeno: Čet Sep 27, 2018 6:01 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Dvomim, da kdo ve kaj je to s.reserve.
Ena opcija so SSI tahi, ena recimo je, da staticno stran posljes, potem pa ajax naredi in pridobi dinamiko v drugem requestu.

Avtor: miharixKraj: LJ PrispevekObjavljeno: Čet Sep 27, 2018 11:18 pm    Naslov sporočila:  
----------------------------------------------------------------------------
SPIFFS na njem pa html + css + json + JavaScript + opcijsko za real time posodobitve vzpostaviš WebSocket.

Avtor: mato1111Kraj: Vrhnika PrispevekObjavljeno: Čet Jul 15, 2021 6:25 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Zdravo ukvarjam se z ESP.
na spletni strani imam takle form:
Koda:
<form action="/settings" method="GET">
Checkbox: <input type="Checkbox" id="cbox" name="cbox">
<input type="submit" value="Save"></form>


Rad bi naredil, da se ob pritisku na gumb Save za kaksne 2s pokaze sporocilo "Settings saved" in potem izgine. Trenutno imam narejeno tako, da se ob pritisku na Save ponovno nalozi stran /settings pa se mi zdi da manjka nek tak "feedback" ko pritisnem Save.

Avtor: miharixKraj: LJ PrispevekObjavljeno: Čet Jul 15, 2021 6:49 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Imaš vsaj 2 poti:

Bolj šminkersko a več časa
1. Javascript pa se igaš kakor hočeš od tega da ti onemogoči gumb save, kaj napiše, pobarva...

Minimalistično a super hitro implementirano
2. ko klikneš na strani 1 save ti odpre stran 2 na kateri je sporočilo ter meta značka za samodejni redirect po določenem času na stran 1 (ali kam drugam)

Koda:
<meta http-equiv="refresh" content="5; URL=https://www.elektronik.si/" />

Avtor: mato1111Kraj: Vrhnika PrispevekObjavljeno: Pon Jul 19, 2021 2:05 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Zanima me kako se naredi funkcijo (če je sploh mogoče) v JavaScript ki bi zgenerirala nekaj takih vrstic v tabeli:
Koda:
<td><input type="checkbox" id="A1" name="A1" value="true" %A1%></td>
<td><input type="number" min="0" max="23" id="STH1" name="STH1" value=%STH1%></td>

Spreminjati se morajo tudi indeksi v imenih v vsaki vrstici sepravi A1, A2, A3... in STH1, STH2, STH3,...

Avtor: mosqito PrispevekObjavljeno: Pon Jul 19, 2021 2:28 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Predlagam, da si pogledaš jQuery. Je zelo uporabno.

Tule imaš primer za tvoj problem:
https://www.geeksforgeeks.org/how-to-make-html-table-expand-on-click-using-javascript/

Na JSfiddle pa lahko takoj preizkušaš, če deluje tako, kot si si zamislil.

Gornji primer...
https://jsfiddle.net/mtcx29ou/

Avtor: mato1111Kraj: Vrhnika PrispevekObjavljeno: Sre Okt 20, 2021 5:45 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Imam nek checkbox v html.
Rad bi da se mi prikazuje stanje (on/off) LEDice v "realnem" času oz. da se stanje osvežuje na 2 sekundi.
Našel sem nek prmer ki sem ga sprobal. Stvar dela za en checkbox jaz pa bi rabil isto narediti za 4.
Script funkcija ki osvežuje zgleda takole:
Koda:
setInterval(function ( ) {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
      var inputChecked;
      if( this.responseText == 1){
        inputChecked = true;
      }
      else {
        inputChecked = false;
      }
      document.getElementById("output=1").checked = inputChecked;
    }
  };
  xhttp.open("GET", "/state", true);
  xhttp.send();
}, 2000 ) ;

Ker se mi ne sanja kaj zgornji del kode sploh naredi bi rabil malo (veliko) pomoči.
Moram napisati 4 ločene funkcije, vsaka za svoj checkbox ali se da to dodati kar skupaj že v to obstoječo?

Koda v arduino (uporaba ESPAsyncWebServer knjižnice) pa izgleda takole:
Koda:
server.on("/state", HTTP_GET, [] (AsyncWebServerRequest *request) { //Ko dobim zahtevek /state vrnem stanje ledice
    request->send(200, "text/plain", String(digitalRead(LED_BUILTIN)).c_str());
  });

V tem primeru mi ESP vrača vrednost že vgrajene LEDice (0 oz 1)

Stran 1 od 1

Powered by phpBB © 2001,2002 phpBB Group