Hallo,
ich hatte ja schonmal was dazu gefragt - ich wollte einen Teil der Seite "zur Laufzeit" ständig neu generieren, wenn neue Daten gesetzt werden - also nicht nur beim ersten Aufruf der Seite. Die Seite muß auch immer vorhanden sein und darf nicht irgendwann zwischendurch durch ein cgi-Script etc. (oder eben die komplette Seite durch Javascript) neu aufgebaut werden, damit bestimmte hidden input-Felder stets erreeichbar sind bzw. ausgelesen werden können. Jedenfalls sollte der Inhalt des Feldes auch im Design der Seite angezeigt werden (ohne die Möglichkeit, das input-Feld selber per CSS zu stylen). Ich hab das versucht, wie unten zu sehen, zu lösen. Dabei wollte ich, daß beim ersten Aufruf der Seite unten durch WriteUser('') der Layer bzw. das DIV-Feld komplett generiert wird (je nach Browser) und dann bei den folgenden Aufrufen nur noch der Inhalt des jeweiligen Layer/DIV Feldes neu gefüllt wird - nur klappt das so anscheinend nicht. ... setData(user) kann zu jeder Zeit von einer anderen HTML Seite aufgerufen werden, um neue Daten zu übergeben ... Wo ist da mein Denkfehler bzw. was mache ich da falsch bzw. was muß ich machen, damit es so in der Art funktioniert ?
<html>
<head>
<script Language="Javascript">
<!--
var firstUser = 0;
var is_IE = RoutineZumRausfindenObIE();
var currentUser=null;
function WriteUser(user)
{
if(firstUser == 0)
{
if (is_IE)
{
document.writeln('<DIV align="right" id=currentUser style="position:absolute;top:13;left:14;WIDTH:120;background-color:ff0000;visibility:visible;">');
document.writeln('<font face="arial"> '+user+' </font></DIV>');
currentUser = document.all.currentUser;
}
else
{
document.writeln('<LAYER name="currentUser" top="12" left="13" WIDTH="119" visibility="show" bgcolor="ff0000">');
document.writeln('<div align=right><font face="arial"> '+user+' </font></div></LAYER>');
currentUser = document.currentUser;
}
firstUser = 1;
}
else
{
if (is_IE)
{
currentUser.innerHTML = '<font face="arial" size=1> '+user+' </font>';
}
else
{
currentUser.document.writeln('<div align=right><font face="arial" size=1> '+user+' </font></div>');
}
}
}
function setData(user)
{
this.document.userdata.user.value = user;
WriteUser(user);
}
//-->
</script>
</head>
<body>
<form name=userdata>
<input type=text name=user value="user2">
</form>
<script Language="Javascript">
<!--
WriteUser('');
//-->
</script>
</body>
</html>
MFG,
speedy