Thread JS-DOM - Probleme mit createElement (6 answers)
Opened by Strat at 2006-05-14 00:00

Strat
 2006-05-14 00:00
#24764 #24764
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
Hallo Leute,

ich spiele gerade als Vorbereitung auf AJAX ein wenig mit dem DOM rum und bin dabei auf folgendes Problem gestossen:

[html]
...
<body>
<form name="SendForm" action="" method="post" onsubmit="return AddMessage()">
Input:
<input type="text" id="inputLine" value="" />
<input type="submit" name="sendButton" value="Send" />
</form>

<div id="Output" >
<p class="chatOutputLine">01: erste Zeile</p>
</div>

</body>
</html>
[/html]
auf dieser seite soll fuer alles, was oben ins textfeld eingegeben wird, neue elemente in <div id="Output" erstellt werden. Dies funktioniert auch mit folgendem JS-Code, aber nicht so, wie gewuenscht.
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var messageId = 1;

function AddMessage () {

var inputLine = document.getElementById('inputLine');
var output = document.getElementById('Output');

var newLine = document.createElement("p");
newLine.setAttribute("class","chatOutputLine");

var text = document.createTextNode(messageId + ": " + inputLine.value);

output.appendChild( newLine.appendChild(text) );

alert('Printed: ' + inputLine.value);
inputLine.focus();
inputLine.value = '';

messageId++;
return false;
} // AddMessage

da wird dann auch was ausgegeben, jedoch nicht so, wie ich's will. Da wird anscheinend kein <p>...</p> erzeugt, sondern nur auf die Seite geschrieben (bei IE6 oder dem neuesten Firefox), also z.B.
Code: (dl )
1: dfgh2: dfh3: zeile 34: vierte zeile5: fuenfte zeile

wie kann ich da stattdessen ausgeben:
Code: (dl )
1
2
3
4
5
1: dfgh
2: dfh
3: zeile 3
4: vierte zeile
5: fuenfte zeile


chat.css sieht uebrigens folgendermaszen aus:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
.chatOutputLine {
font-family: Arial, Helvetica, sans-serif;
font-style: normal;
background-color: #FFFF66;
letter-spacing: normal;
text-align: left;
word-spacing: normal;
white-space: normal;
margin: 1px;
border: medium solid #0000FF;
}
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread JS-DOM - Probleme mit createElement