Willkommen in der Webstatt Zum Webstatt Blog und Stories
phore phore am 07.06.07 08:36

Hallo

Für eine Spesenverwaltung will ich mit Javascript eine vom User angebene Anzahl Spesenpositionsformulare ausgeben lassen. Funktioniert eigentlich auch ganz gut, solang ich nur ein String ausgebe. Sobald ich aber ein Formular ausgeben will, gibt es einen Fehler.

Zuerst dachte ich es sei wegen der Tabelle die ich ausgeben will, jetzt habe ich das Formular aber umgeschrieben, klappt trotzdem nicht.

Hier ist der Javascript code:

function print_positions () {
document.getElementById('anzahl').style.display = 'none';
document.getElementById('positionen').style.visibility = 'visible';
var anzahl = document.getElementById('anz_posi').value;

// Hier gehts los
var content = '<div id="position_left">
<ul>
<li>Bezeichung /<br />Bemerkung</li>
<li>Spesenart</li>
<li>Betrag</li>
<li>Währung</li>
</ul>
</div>
<div>
<input type="text" name="bezeichnung" class="bezeichnung">
<br />
<select name="select" class="dropdown">
<option>-- bitte wählen --</option>
<option class="reisen">Reise Kosten</option>
<option class="essen">Essens Kosten</option>
<option class="material">Material Kosten</option>
</select>
<br />
<input type="text" name="betrag" class="betrag" />
<br />
<select name="select" class="dropdown" style="margin-top: 8px; ">
<option>Euro €</option>
<option>Schweizer Franken CHF</option>
</select>
</div>';

// Da gebe ich es aus
for (i = 0; i < anzahl; i++) {
document.getElementById('positionen').innerHTML += content;
}
}


Die Fehlerkonsole meldet:

Quote
Fehler: unterminated string literal
Zeile: 56, Spalte: 16
Quelltext:
var content = '<div id="position_left">


Wie gesagt, wenn ich in [FONT=courier new]var content[/FONT] zb. nur "asdf <br />" schreibe, klappts.

Danke schonmal für eure Beiträge

so long

netcup.de Warum gibt es hier Werbung?
Snake am 07.06.07 09:20

du kannst in js keine strings über mehrere zeilen machen.

phore phore am 07.06.07 09:28

danke. und wie mach ich es stattdessen? bzw. was ist die beste möglichkeit so ein formular ausgeben zu lassen?

der_nic der_nic am 07.06.07 14:10

einfach den String in nur eine Zeile schreiben oder per DOM die einzelnen Knoten erstellen.

Zeronet Zeronet am 07.06.07 15:03

mit SSI könntest du die Codeteile auslagern und dann via js einbinden (macht sich im Code evt. schöner als so eine lange Zeile).

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt