javascript querySelectorAll

OP #7593116
Lesenswert?

Hallo.

Ich bin absoluter Anfänger was javascript an geht. Ich möchte unter Chrome mit Tampermonkey ein User Script erstellen, welches den Wert von data-sonne aus folgendem Code ausliesst:

... <li data-haus="123" data-baum="abcd" data-sonne=678>Text</li> ...

Mit

const nodeList= document.querySelectorAll("[data-sonne]"); nodeList.forEach(li => console.log(li));

erhalte ich schonmal die entsprechenden ganzen Codezeilen. Ich möchte aber nur den Wert (hier zB 678) erhalten. Erstmal als console.log ausgeben und später an eine URL (zB http://webserver.internal/data.php?sonne=678) übergeben.

1.) wie komme ich nur an den Wert? 2.) wie rufe ich später die URL auf? Vielen Dank.

Martin

#7593124
Lesenswert?

Martin D. schrieb:

1.) wie komme ich nur an den Wert?

einfach per "getAttribute" auslesen.

1
const nodeList= document.querySelectorAll("[data-sonne]");
2
nodeList.forEach(li => console.log(li.getAttribute("data-sonne"));

Martin D. schrieb:

2.) wie rufe ich später die URL auf?

Kommt darauf an, was du mit aufrufen meinst.

Links zum Klicken erstellen? Iframes mit src=.... erstellen? Daten per "fetch()" im Script laden?

#7593165
Lesenswert?

Εrnst B. schrieb:

Martin D. schrieb:

1.) wie komme ich nur an den Wert?

einfach per "getAttribute" auslesen.const nodeList= document.querySelectorAll("[data-sonne]"); nodeList.forEach(li => console.log(li.getAttribute("data-sonne"));

Für eigene data-* attribute gibt es extra die "dataset" eigenschaft:

1
const nodeList= document.querySelectorAll("[data-sonne]");
2
nodeList.forEach(li => console.log(li.dataset.sonne));

Darüber kann man die auch erstellen / setzen oder löschen. Ist simpler als die Funktionen zu nutzen.

PS: Dir fehlt da ein )

Gast #7593182
Lesenswert?

Wenn deine attribute eindeutig sind geht auch wert = getElementById("dataSonne").value; In wert stehen dann deine 678

dann musst nicht über <li> an an die Werte ran.

Martin D. schrieb:

müssen oder die aktuelle Seite verändern etc. Das javascript soll die URL mit dem Übergabeparameter aufrufen.

Hier nimmt man fetch, früher das nahm man das xhtmlRequest-Ojekt. https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren