Weil innerHTML Mist ist, wenn man Code mit mehreren dynamischen Bestandteilen erzeugen will. Man bastelt sich da eine irgendwann völlig unübersichtliche Codewüste aus verketteten Strings und "escaped"-en Zeichenkettenbegrenzern zusammen
Ja, wenn man es schlecht macht. Unübersichtliche Codewüsten kann ich mit innerHTML *oder* DOM machen. Ich halte den Code, den Struppi und du hier beispielhaft gepostet haben, für alles andere als übersichtlich.
Warum sind denn hier im Forum immer wieder Anfragen, die im Endeffekt durch ein vergessenen Zeichenketten-Begrenzer oder fehlende Maskierung verursacht wurden?
Weil Leute massig HTML in JavaScript in einer Weise unterbringen, wie es da überhaupt nicht benötigt wird und nicht hingehört.
Und das würde ich eigentlich für einen schlechten Scherz halten, überdimensionierte und tw. schlechte Frameworks wie prototype.js, jquery und wie sie alle heißen, als Alternative zu einer kleinen Helferfunktion heranzuziehen.
Ach Kai, versuchs doch mal mit Argumenten statt polemischen Rundumschlägen.
Der Link ist http://www.prototypejs.org/api/template und es geht nicht um deine Vorurteile hinsichtlich Frameworks, sondern um dieses Konzept, dass erstmal mit Prototype nichts zu tun hat; man braucht auch sicher nicht Prototype, um dieses Konzept einzusetzen, und es ist auch nicht kompliziert, solche Funktionalität mit separaten Helferfunktionen umzusetzen.
Mathias