innerHTML -> undefined - Ausgabe vor der eigentlichen Ausgabe ?
Dieter
- javascript
Hallo,
obwohl ich Google und auch SelfHTML genutzt habe, ist mir die Erklärung bzw. Lösung meines Problemes leider nicht klar - daher bitte ich um euer Verständnis (da sicher eine DAU-Frage) und eure Hilfe:
Ich prüfe ein Formular vor dem Submit per JS auf korrekte Eingaben und möchte im Fehlerfall eine entsprechende Fehlermeldung innerhalb der HTML-Seite (also nicht per alert) ausgeben.
Hierzu nutze ich in js folgenden Aufruf:
if (err==1) {
var fehlermeldung = document.all.fehlertext.innerHTML = \'<div align="center"><center><table border="0" cellpadding="0" cellspacing="5" width="100%" style="border: 1 solid #FF0000">\' + errtxt + \'</table></center></div><br>\';
window.location.href = "#1";
}
Das window.lacation sorgt nur dafür das die Seite wieder zu der Textmarke "1" springt.
Soweit funktioniert die Ausgabe auch hervorragend, allerdings ist vor der Fehlermeldung immer ein "undefined".
Jetzt meine Fargen:
a) Warum ist das so ?
b) Wie bekomme ich das "undefined" weg ?
Ach ja, der innerHTML greift auf einen definierten SPAN-Bereich zu, aber das funktioniert ja so wie es soll....
Gruss
Dieter
[latex]Mae govannen![/latex]
var fehlermeldung = document.all.fehlertext.innerHTML
Also für IE(4). Ansonsten ist document.all ist nicht sinnvoll, auch wenn viele Browser es (zähneknirschend) unterstützen.
= '<div align
Ein String (und einen solchen erwartet innerHTML) sollte schon mit " oder ' beginnen (und enden), nicht mit \ Escapen von Quotezeichen nur »innerhalb« des Strings.
window.location.href = "#1";
}[/code]
Das window.lacation sorgt nur dafür das die Seite wieder zu der Textmarke "1" springt.
Du hast also irgendwo id="1" vergeben? Das ist nicht zulässig. Eine id darf (unter anderem) nicht mit einer Zahl beginnen.
Cü,
Kai
Hallo Kai,
was wäre denn eine sinnvolle (und jetzt aktuelle) Angabe anstatt document.all.fehlertext.innerHTML ?
Die Hochkommatas habe ich tw. aus Faulheit verwendet, da ich nicht die ganzen Anführungszeichen escapen wollte - zumal das ganze per php ausgegeben wird (echo ' ';)...
Die Textmarke ist per <a name... deklariert, habe ich jetzt aber auch als "oben" gekennzeichnet.
Aber leider erklährt das (jedenfalls für mich) nicht die undefined - Ausgabe, es sei denn es liegt an meinem document.all.fehlertext.innerHTML...
Gruss
Dieter
was wäre denn eine sinnvolle (und jetzt aktuelle) Angabe anstatt document.all.fehlertext.innerHTML ?
z.b. document.getElementById(), wenn das Element die id fehlertext hat.
Die Hochkommatas habe ich tw. aus Faulheit verwendet, da ich nicht die ganzen Anführungszeichen escapen wollte - zumal das ganze per php ausgegeben wird (echo ' ';)...
Wozu das? Und warum zeigst du uns PHP Code?
Struppi.