• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

invalid XML name?

Status
Für weitere Antworten geschlossen.

thuemmy

Aktives Mitglied
Ich bin gerade dabei, mir ein paar Grundzüge von JavaScript beizubringen, da ich das gerade für ein Projekt bräuchte. Deswegen wollte ich einen kleinen Text machen, und mich langsam an die Lösung heranarbeiten. Aber schon der erste Versuch ist kläglich gescheitert.

PHP:
<script type="text/javascript">
var bild = new array("bilder/GKF_GR.jpg", "bilder/GFKVerlegung_GR.jpg", "bilder/GFKRolltreppe_GR.jpg", "bilder/GFKBank_GR.jpg", "bilder/StaKaDeckenAnsicht_GR.jpg");
document.write("array-länge" + bild.length + <br>";
for (var i = 0; i < bild.length; i++) {
    document.write(bilder[i] + "<br>\n");
}
</script>
Die Fehlerkonsole zeigt mir in der Zeile mit der for-Schleife den Fehler invalid XML name mit dem Verweis auf das b von bild.length. Die Ausgabe vor der Scheife (Anzahl Elemente) zeigt mir der Browser auch nicht an.

Was mach ich nur falsch?

Gruß thuemmy
 
Bist du sicher, dass es nicht das <br> ist? Maskier mal die Zeichen mit &gt; und &lt; oder nimm es ganz raus, Bilder sollten ja eh besser als Liste ausgezeichnet werden.
 
Evtl. hat es mit E4X zu tun.

In jedem Fall muss es new Array() lauten statt new array(), wobei [] schneller ist.
 
So, nachdem ich einige Tippfehler noch beseitigt habe, ist der Fehler erstmal weg. Aber dafür kommt natürlich ein neuer. Diesmal behauptet die Fehlerkonsole, dass das array nicht definiert sei (array not defined)

Hier nochmal der Code (diesmal ohne Schlamperfehler)
PHP:
<script type="text/javascript">
var bild = new array("GKF_GR.jpg", "GFKVerlegung_GR.jpg", "GFKRolltreppe_GR.jpg", "GFKBank_GR.jpg", "StaKaDeckenAnsicht_GR.jpg");
document.write("array-länge" + bild.length + "&gt;br&lt;");
for (var i = 0; i < bild.length; i++) {
    document.write(bild[i] + "&gt;br&lt;\n");
}
</script>
Hab auch vorsichtshalber mal den linken Teil der Elemente (bilder/) entfernt. Könnte ja sein, dass man das slash maskieren muss.

Ich weiß schon, warum ich mich noch nie mit JavaScript beschäftigt habe ;-)

Gruß thuemmy
 
Dann schreib das array mal groß, wie Crash gesagt hat.

Schöner wäre es auch noch, wenn du auf das document.write verzichtest und statt dessen das DOM manipulierst. Aber du fängst ja gerade erst an ;)
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben