Probleme mit JavaScript in IE

jokerbell

Grünschnabel
Hallo,

ich habe folgende HTML-Seite
HTML:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Name</title>
</head>
<style type="text/css">
.t16InlineError {text-decoration:underline;color:red;}
.t16InlineError span{text-decoration:underline;color:red;}
</style>
<script type="text/javascript">
function change()
{
  var elSpan = document.getElementById('NAME_label').cloneNode(true);
  var elLabel = document.getElementById('NAME_label').parentNode.cloneNode(false);
  var elDiv = document.createElement("div");
  var elMain = document.getElementById('NAME_label').parentNode.parentNode;
  var elDelete = document.getElementById('NAME_label').parentNode;
  var elBr = document.createElement("br");
  var elText = document.createTextNode("Name must have some value.");
  
  elDiv.setAttribute("class", "t16InlineError");
  elLabel.appendChild(elSpan);
  elDiv.appendChild(elLabel);
  elDiv.appendChild(elBr);
  elDiv.appendChild(elText);
  
  elMain.replaceChild(elDiv, elDelete);

  /*elMain.removeChild(elDelete);
  elMain.appendChild(elDiv);
  alert(elMain.innerHTML);*/

}
</script>
<body>
<table width="300">
<tr>
<td>
<label for="NAME" tabindex="999">
<span id="NAME_label">Name</span>
</label>
</td>
<td>
<input type="button" value="Change" name="B6" onClick="change()">
</td>
</tr>
</table>
</body>

Wenn ich das ganze im FireFox ausführe, wird das Label richtig mit einem <div> umgeben und der Style angewendet. Im IE wird das Label auch geändert, aber der Style nicht angewendet.
Hat jemand eine Ahnung warum?
Kann mir außerdem noch jemand sagen, wie man "richtig" den <br> tag erzeugt? Irgendwie wird meiner nicht abgeschlossen.

Danke
jokerbell
 
*gegen kopf schlag*

danke für den hinweis Sven, so funktioniert's super. Hatte glatt vergessen, dass man class besser mit .className festlegt.

Danke
 

Neue Beiträge

Zurück