Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Einzelne Werte einer XML-Datei auslesen und in HTML-Seite einbinden?
#9
Vielen Dank für deine Mühe, aber es klappt leider immer noch nicht.

Die Wetterstation hat eine eigene IP-Adresse im Heimnetzwerk und auf 'IP-Adresse'/fresh.xml liegt die besagte XML-Datei, welche bei jedem Aufruf die aktuellen Temperaturwerte beinhaltet.

Nun möchte ich auf meinen Rechnern / Handys, welche im Heimnetzwerk verbunden sind, eine auf allen Geräten lokal gespeicherte HTML-Datei direkt öffnen, wo die gewünschten Werte wie in meinem 1. Post frei formatiert und positioniert angezeigt werden sollen. Die besagte HTML-Seite dient nicht einzig und allein der Temperaturüberwachung: ich betreibe auf diese Weise auch mein Video - Live - Überwachungssystem zuhause (ohne Server - bei den Clients werden ohne Zwischenstation direkt die Kamerabilder angezeigt) und da möchte ich gerne auch eine Temperaturanzeige implementieren.

Zu deiner Frage, ja z.B. mit einem simplen Iframe kann ich die XML-Datei auch direkt in einer HTML-Datei anzeigen, aber dann ist das halt die vollständige XML-Datei und nicht die 4 gewünschten Werte isoliert.

Jedenfalls scheitert das Ganze nicht an der Wetterstation, denn wenn ich eine XML-Datei mit den selben Inhalt in den selben Ordner wie die HTML-Datei abspeichere (und den Pfad im code natürlich dementsprechend anpasse) funktioniert es genauso wenig.

Sprich, HTML-Datei und XML-Datei testweise in den selben Ordner, im Code einfach 'datei.xml' eingetragen -> funktioniert leider nicht.

Ich befürchte, dass es da noch ein Missverständnis irgendwo gab:

Hier, damit es keine Missverständlichkeiten gibt:

2 Dateien im selben Ordner lokal auf dem PC abgespeichert:

Datei 1: index.html

Code:
<html>

<main>
<label>Sensor 1</label>
<p>Val = <span id="reihe1_val1"></span></p>
<p>Val2 = <span id="reihe1_val2"></span></p>
<label>Sensor 2</label>
<p>Val = <span id="reihe2_val1"></span></p>
<p>Val2 = <span id="reihe2_val2"></span></p>
</main>
<script>
var r1v1=document.getElementById('reihe1_val1');
var r1v2=document.getElementById('reihe1_val2');
var r2v1=document.getElementById('reihe2_val1');
var r2v2=document.getElementById('reihe2_val2');

fetch ('datei.xml', {  
}).then (function (response) {
console.log(response);
    return response.text();
})
.then (function (data) {
        console.log(data);
    let parser = new DOMParser (),
    xmlDoc = parser.parseFromString (data, 'text/xml');
        root=xmlDoc.getElementsByTagName ('root')[0];
//        r1v1.innerHTML=root.children[0].getAttribute('val');
//        r1v2.innerHTML=root.children[0].getAttribute('val2');
//        r2v1.innerHTML=root.children[1].getAttribute('val');
//        r2v2.innerHTML=root.children[1].getAttribute('val2');
            r1v1.innerHTML=root.getElementsByTagName('sns')[0].getAttribute('val');
            r1v2.innerHTML=root.getElementsByTagName('sns')[0].getAttribute('val2');
            r2v1.innerHTML=root.getElementsByTagName('sns')[1].getAttribute('val');
           r2v2.innerHTML=root.getElementsByTagName('sns')[1].getAttribute('val2');
}).catch (function (error) {
console.log ("Fehler: bei Auslesen der XML-Datei " + error);
});
</script>

    
</html>

Datei2:

datei.xml

Code:
<root>
<sns id="1" name="Sensor A" type="1" status="0" unit="0" val="25.0" w-min="" w-max="" type2="2" status2="0" unit2="0" val2="44.1" w-min2="" w-max2="" type3="3" status3="0" unit3="0" val3="11.9" w-min3="" w-max3=""/>
<sns id="2" name="Sensor B" type="1" status="0" unit="0" val="21.0" w-min="" w-max="" type2="2" status2="0" unit2="0" val2="54.3" w-min2="" w-max2="" type3="3" status3="0" unit3="0" val3="15.9" w-min3="" w-max3=""/>
<status msp="1" level="2" location="Temperatur" time="01/07/2009 3:26:41"/>
<dbgg stmsp="0" v1="0" v2="0" v3="0" v4="0" v5="0" v6="0" v7="0" v8="0" v9="0" v10="0" v11="0" v12="0" v13="0" v14="0" v15="0" v16="0"/>
</root>

Beim Öffnen der index.html sollen die 4 Werte aus der XML-Datei angezeigt werden.

Danke nochmals und schöne Grüße!

Das Ziel ist zum Greifen nah!!! Big Grin

Günther
Zitieren


Nachrichten in diesem Thema
RE: Einzelne Werte einer XML-Datei auslesen und in HTML-Seite einbinden? - von BachManiac - 02.06.2022, 06:44

Gehe zu:


Benutzer, die gerade dieses Thema anschauen:
2 Gast/Gäste