Axel Richter: Firefox verbirgt Input Values (bug???)

Beitrag lesen

Hallo,

vielleicht kann mir mal jemand helfen.

Ich setze per Javascript im Firefox die values von input Tags.
Diese sind wiederum per javascript erzeugt worden.

Das klappt wunderbar, wenn ich jedoch das formular per
display = none ausblende und wieder einblende, sind die values
nicht mehr sichtbar - wenn man in eines der leeren felder klickt
und space drückt erscheinen die texte in den inputfeldern wieder.

Eigentlich wollte ich Dir ja schreiben, dass sicherlich niemand Lust hat, Dein kompliziertes Szenario nachzubauen und Du deshalb keine Antwort bekommst. Beim nächsten Mal verlinke bitte eine auf das Problem reduzierte Testseite. Während Du das tust, löst sich oft das Problem schon, weil Du dabei Deine Fehler entdeckst.

Aber ich bin ja nicht so ;-). Folgender Nachbau Deiner Beschreibung funktioniert allerdings im FireFox problemlos:

  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"  
        "http://www.w3.org/TR/html4/strict.dtd">  
<html>  
<head>  
<title>Titel</title>  
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">  
<script type="text/javascript">  
function insertInput(myForm) {  
  var myP = document.createElement("P");  
  var myInput = document.createElement("INPUT");  
  myInput.value="ein Test";  
  var myButtonSichtbar = document.createElement("BUTTON");  
  myButtonSichtbar.appendChild(document.createTextNode("sichtbar"));  
  myButtonSichtbar.onclick = function() {  
    this.parentNode.getElementsByTagName("INPUT")[0].style.display = "inline";  
    return false;  
  }  
  var myButtonUnsichtbar = document.createElement("BUTTON");  
  myButtonUnsichtbar.appendChild(document.createTextNode("unsichtbar"));  
  myButtonUnsichtbar.onclick = function() {  
    this.parentNode.getElementsByTagName("INPUT")[0].style.display = "none";  
    return false;  
  }  
  myP.appendChild(myButtonSichtbar);  
  myP.appendChild(myInput);  
  myP.appendChild(myButtonUnsichtbar);  
  myForm.appendChild(myP);  
}  
</script>  
</head>  
<body>  
<p><button onclick="document.forms[0].style.display='block'; return false;">einblenden</button></p>  
<form action="#" method="get">  
<p><button onclick="this.form.style.display='none'; return false;">ausblenden</button></p>  
<p><button onclick="insertInput(this.form); return false;">neues INPUT</button></p>  
</form>  
</body>  
</html>  

Hat jemand ne Idee, wie oder warum das so ist und was man dagegen
machen kann?

Nein, denn das beschriebene Problem tritt so nicht auf.

viele Grüße

Axel