Dominik Schäfer: Formularwerte so ändern, daß .innerHTML die Änderung mitbekommt

Beitrag lesen

Hallo allerseits,

ich ändere über z.B.
document.records_form.track1.value = 'xyz';
die Werte von Eingabefeldern, die in einem Container liegen. z.B.

<form name="records_form" id="records_form">
  <div id="container">
    <input type="text" name="track1" />
  </div>
</form>

an anderer Stelle füge ich über .innerHTML neue Felder hinzu, z.B.

document.getElementById('container').innerHTML += '<input type="text" name="track2" />';

Das Problem ist, daß jedesmal, wenn ich über .innerHTML Felder hinzufüge, die über .value hinzugefügten Inhalte verschwinden - diese Änderungen werden offensichtlich nicht in .innerHTML gespeichert. Wie erreicht man das?

Das einzige, was mir dazu einfiele, wäre, die neuen Felder über document.createElement einzufügen, aber da das hier natürlich nur eine grobe Vereinfachung der eigentlichen Skripte ist, würden diese dadurch gewaltig aufgebläht werden, so daß ich das gerne vermeiden würde.