ich benutze dieses tutorial als basis für mein programm und es funktioniert recht gut
Mein Problem ist dass ich durch "Refresh" Buttons eine Variable vom Maincode in dem HTML-Code updaten möchte. Außerdem möchte ich Radio Buttons verwenden um Variablen im Main-Code zu verändern
Ich hab mich schon ein bisschen in AJAX/jQuery eingelesen aber ich versteh nicht so recht wie ich das anwenden soll bzw finde ich nichts dazu das zu meinem Problem passt
Da der gesamte HTML Code recht lang ist poste ich erst nur den wichtigen Teil.
Mit der Skriptfunktion RadioValidator wollte ich die Variable im Code verändern aber das funktioniert nicht wirklich
Die %DC_Offset% variable würde ich gern mit dem Measure Button updaten. Könnte das vielleicht ähnlich wie bei den Radio Buttons funktionieren?
Ich hab auch versucht die %DC_Offset% variable durch diesen Codeschnipsel zu verändern (hab ich in nem Tutorial gesehen) aber leider funktioniert das auch nicht so recht
Da ich das von Dir verwendete Tutorial nicht kenne, kann ich Dir nicht direkt antworten.
Xenoshell:
Mein Problem ist dass ich durch "Refresh" Buttons eine Variable vom Maincode in dem HTML-Code updaten möchte. Außerdem möchte ich Radio Buttons verwenden um Variablen im Main-Code zu verändern
Das habe ich mit Hilfe der Seiten von Fips und JSON zusammen mit Javascript hinbekommen.
Da ich den Einstieg etwas sperrig fand, habe ich eine Anleitung erstellt: Einführung zu fipsok.de
ich habe mir mal diese Webseite mit den Beispielen angeschaut und es sieht schon recht vielversprechend aus.
Input Tab könnte ich für alle Inputs verwenden und das JavaScript von BME280 tab zum updaten der Dateien.
Das größte Problem ist wohl nur noch die Radio Buttons hinzuzufügen und auch noch zu verbinden. Da stehe ich halt wirklich auf dem Schlauch. Hast du schon Erfahrung mit anderen Input types gemacht?
Mal davon abgesehen das es nicht mehr den AsyncWebserver benutzt, solange es funktioniert wäre es mir das wert zu wechseln obwohl es große Arbeit sein wird
Für mich existiert das Problem haupsächlich in der Verbindung mit dem Maincode die durch den Submitbutton passieren soll. Ich weiß dafür ist das onclick="RadioValidator()" da. Nur fällt mir es recht schwer sich komplett neu in XMLHttpRequests einzulesen und verstehen tu ich auch nicht alles
Ich würde halt gerne mit den Radio Buttons Boolwerte steuern aber ist nicht so einfach wie ich vermutet habe
Ich hab hier mal alle Inputs gezeigt die in der Webseite vorkommen sollen.
Also eben Radio Buttons mit extra Speicherbutton. Normale Inputs mit Speicherbutton und wie bei Vertikalem Zoom Inputs mit Min & Max die auch einen Speicherbutton besitzen.
Die zwei Outputs die ich auch noch brauche sind nicht im Bild drauf. Das sind zwei Variablen die in der Webseite angezeigt werden sollen die durch einen "Messen" Button geupdatet werden sollen
Also ja das geht in meine Richtung. @agmue wie machst du denn das? Ist kein Codestück das ich in fips finden kann
Hallo, hier mal ein kleines Update zum ersten Problem. Dem Updaten einer Variable die in HTML angezeigt werden soll. Zuerst wollte ich das es über Knopfdruck geupdatet wird aber ich habe doch noch ein Tutorial ausgegraben das ich noch nicht gesehen habe.
Das ist zwar für Temperatur und Luftfeuchtigkeit gedacht, aber die Werte konnte ich sehr einfach anpassen um meine eigenen Werte zu erneuern.
Kann mir jemand noch bei dem setzten von Variablen helfen die durch Radio-Buttons gesteuert werden?
Was ich Dir gezeigt habe, stammt aus einem noch unfertigen Projekt zur Lichtsteuerung. Die etwas umfangreiche Animation ignorierst Du bitte einfach. Anbei findest Du drei wichtige und hoffentlich erhellende Dateien als Ausschnitt. Ausgegangen bin ich von den Tabs von Fips.
ich hab mir mal deinen Code angeschaut und so ganz versteh ich den nicht. Du benutzt ja den Button "TwinkleFox" um die Farbwechselzeit, Blinkgeschwindigkeit und Blinkdichte zu übertragen. Der Button ist doch aber gar nicht an irgendeine Funktion geknüpft oder? Hab gedacht, da macht man dann immer sowas wie onclick=function().
Was genau passiert hier in dem Skript? Für micht sieht es so aus wie als würden die Werte gespeichert werden.
if (server.hasArg("TF_Blinkdichte")) {
TF_Blinkdichte = server.arg("TF_Blinkdichte").toInt();
anzeigeOLED(String("TF_Blinkdichte" + String(TF_Blinkdichte)).c_str());
}
In der Funktion void arg_TwinkleFox() werden die werte dann nochmal abgefragt und an die funktion anzeigeOLED() übergeben, oder?
Ich seh auch gerade wie du die Verbindung gemacht hast mit der Funktion und dem Maincode.
if (server.hasArg("ACTION")) {
akt_action = server.arg("ACTION").toInt();
anzeigeOLED(String("action " + String(akt_action)).c_str());
}
arg_TwinkleFox();
if (!handleFile(server.urlDecode(server.uri())))
server.send(404, "text/plain", "FileNotFound");
});
Hier wird abgefragt ob der Button mit Name=Action gedrückt wurde und dann wird die Funktion arg_TwinkleFox() ausgeführt.
Ich hoffe ich hab alles richtig verstanden, wenn nicht korrigiere mich noch einmal. Ich werd mal versuchen das heute umzusetzten. Du benutzt ja auch fetch() (ich benutze XMLHttpRequest ). Hab schon positive Sachen darüber gehört. Ist das so viel einfacher oder nur ein bisschen simpler?
Xenoshell:
Ich werd mal versuchen das heute umzusetzten.
Ich denke, Du bist schon auf dem richtigen Weg, deshalb harre ich erstmal der Dinge, die Du noch selbst herausfindest.
Xenoshell:
Du benutzt ja auch fetch() (ich benutze XMLHttpRequest ). Hab schon positive Sachen darüber gehört. Ist das so viel einfacher oder nur ein bisschen simpler?
Eine Beurteilung ist weit außerhalb meines Wissens, ich habe mich an Fips orientiert. Für mich funktioniert das gut, mehr kann ich nicht sagen. Bei Bibliotheken bevorzuge ich wenn möglich die von Espressif, um nicht noch mehr installieren zu müssen. Ob das eine gute Idee ist, weiß ich aber auch nicht.
Hey Leute, noch mal ein kleines Update weil ihr mir alle so schön geholfen habt. Danke nochmals
Ich weiß gar nicht warum ich da nicht früher dran gedacht habe aber meine normalen Inputs mit Text sind eigentlich genau das gleiche wie meine Radio Buttons. Der einzige Unterschied ist das bei den Radio Buttons das Value schon vorgegeben ist und bei den Inputs kann eingegeben werden was auch immer.
Gesagt getan, der Serial Monitor gibt den richtigen Wert aus und er verändert sich auch noch recht zügig wenn man wechselt. Also für alle die auch Radio Buttons benutzen wollen, verweise ich einfach auf den Link in meinem Anfangspost. Ist wirklich fast das gleiche, bis eben der Unterschied mit dem festen Value bei Radio Buttons