Hallo,
Was passiert denn, wenn Du es per innerHTML irgendwo einhängst, im Vergleich zu der Methodik, den Code direkt ins HTML-Dokument zu schreiben?
Das sollte gleichbedeutend sein. Dann habe ich mein Anliegen aber noch nicht richtig rüberbringen können. Mit "valide" meinte ich nicht zwangsläufig HTML, welches sich validieren lässt (der Server produziert da ohnehin Murks), sondern vielmehr eine Struktur aus gültigen HTML tags. Und leider verhalten sich die Browser durchaus unterschiedlich, wenn man ihnen etwas unterschiebt, was sie nicht kennen. Daher hat meine vorgegebene Definition auch keine hierarchische Struktur, sondern stellt die Verbindung über das report-Attribut her.
Mit gültigen tags hätte ich das Problem nicht.
Dann wird es ein ganz klein wenig schwieriger, weil ein Escaping notwendig ist. Allerdings kann der generierende Mechanismus dies übernehmen - bisher klang es für mich so, als würde ein Mensch direkt in den JavaScript-Code schreiben müssen.
Die Definitionen für die Auswertung (also mein Beispiel) kommen nach meiner Vorgabe vom Anwender. Die auszuwertenden Daten wurden bisher ähnlich festgelegt, werden aber vom Server generiert (ist jetzt schwer zu erklären). Jedenfalls können dabei prinzipiell beliebige Zeichenfolgen auftreten und die sind dann im Dokument drin. Eine Kapselung mit escape("...") wäre natürlich denkbar.
Irgendwie denke ich aber noch über eine vollständige HTML-Lösung nach, wobei ich auch dort das Problem bestimmter Zeichen hätte. Mir missfällt aber an der Lösung mit DL/DT/DD, dass ich dort nicht direkt auf Werte per getAttribute() zugreifen kann, sondern mich durch die Liste der <dd> tags hangeln muss. Vielleicht kann ich aber auch den Attributnamen als Teil des id-Attributes vom <dd> tag setzen und habe dann einen direkten Zugriff auf den Wert.
Vielleicht fällt mir ja noch eine HTML-Struktur ein, die den Daten besser entspricht.
Ralf