JS-Abfrage, ob Feld Inhalt hat (war:Frage zum Wiki-Artikel „Name“)
Manfred Prefi
- frage zum wiki
- javascript
Hallo, ich habe in HTML in einer Webseite mehrere Tabellen, deren einzelne Zellen eine ID haben. ich möchte,
a) bestimmte Zellen abfragen, ob ihr Inhalt 'leer' bzw 'nicht leer' ist.
b) nach dem Ausfüllen aller Felder den Inhalt bestimmter Felder in eine Datei schreiben.
Wie kann ich das mit javascipt bewerkstelligen? Kann mir jemand helfen? Manfred Prefi
Servus!
Hallo, ich habe in HTML in einer Webseite mehrere Tabellen, deren einzelne Zellen eine ID haben. ich möchte,
a) bestimmte Zellen abfragen, ob ihr Inhalt 'leer' bzw 'nicht leer' ist.
Bestimmte heißt, dass du deren id kennst. Selektiere diese mit querySelector und lies den textContent aus
b) nach dem Ausfüllen aller Felder den Inhalt bestimmter Felder in eine Datei schreiben.
Das ist eher das Problem. JavaScript wird im Browser des Benutzers ausgeführt und darf eben nicht auf das File System des Nutzers zugreifen - sonst könnte ich mit JS ja Deine Festplatte auslesen.
Das geht mit Node.js, ist aber kompliziert.
Wie kann ich das mit javascipt bewerkstelligen? Kann mir jemand helfen?
Es wäre gut, wenn du sagen könntest, wofür du das brauchst. Evtl. gibt es eine andere Möglichkeit.
Herzliche Grüße
Matthias Scharwies
Hallo Manfred,
ohne deutlich konkretere Angaben kann Dir keiner helfen.
Wir kennen deinen Wissensstand zu JavaScript nicht. Kommt Dir hiervon einiges vor oder sind das alles böhmische Dörfer? Eins wird nicht passieren: Dass Dir jemand auf Grund vager Hinweise ein fertiges Script schreibt.
Wir kennen dein HTML nicht. Ein Script muss auf dem HTML agieren
Wir wissen nicht, was eine Zelle für Dich ist. Das td-Element? Oder ein input- oder textarea-Element darin?
Was meinst Du mit "In eine Datei schreiben?" In eine Datei auf dem Client? In eine Datei auf deinem Server?
Freies Schreiben in Dateien auf dem PC des Benutzers funktioniert nicht. Man kann Links erzeugen, die über eine Objekt- oder Data-URL einen Download ermöglichen. Aber grundsätzlich ist eine Web-Anwendung vom Computer des Anwenders erstmal abgekapselt. Jeglicher Datentransfer muss explizit vom Anwender ausgelöst werden. In deinem Fall ginge das bspw. so:
Rolf
Hallo,
a) bestimmte Zellen abfragen, ob ihr Inhalt 'leer' bzw 'nicht leer' ist.
wenn die Zellen eine ID haben, geht das mit textContent.
b) nach dem Ausfüllen aller Felder den Inhalt bestimmter Felder in eine Datei schreiben.
Das ist die "hohe Kunst". Wo soll die Datei abgelegt werden?
Auf dem Server? Dann musst du dich mit PHP o.Ä. beschäftigen.
Auf dem Rechner des Seitenbesuchers. Dann benötigst du gute Javascriptkenntnisse. Meine einfache Variante zum Speichern von Text-Daten sieht so aus:
// data: Text-Daten
// fn: Dateiname
var write_file = function(data,fn) {
window.URL = window.URL || window.webkitURL;
if(window.URL) {
var gpx_blob = new Blob([data], {type:'text/plain'});
var a = document.createElement("a");
a.download = fn;
a.href = window.URL.createObjectURL(gpx_blob);
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
}
else {
var fenster = window.open("about:blank","GPX");
fenster.document.write(daten.replace(/</g,"<"));
}
}
Die Datei wird da aber mit großer Wahrscheinlichkeit im Downloadordner abgelegt.
Oder such mal nach Filesaver.js.
Gruß
Jürgen