Это ошибка в IE.Если вы предупредите innerhtml, вы увидите, что он заменен.Но браузер не отражает это.
Проверьте этот вопрос SO: https://stackoverflow.com/questions/1293427/
Вам нужно использовать больше функций DOM, чтобы изменить его.Вот небольшой фрагмент кода, который генерирует dom (мое школьное задание, поэтому не обращайте внимания на фиктивный текст):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<title>Creating the Dom!</title>
<link rel="stylesheet" type="text/css" href="createDom.css">
<script type="text/javascript">
function buildbody()
{
var body = document.getElementsByTagName("body")[0];
var theHeader = document.createElement('h1');
var theHeaderTxt = document.createTextNode('Study program Bachelor of ICT');
theHeader.appendChild(theHeaderTxt);
body.appendChild(theHeader);
var theHeader2 = document.createElement('h2');
var theHeader2Txt = document.createTextNode('Introduction');
theHeader2.appendChild(theHeader2Txt);
body.appendChild(theHeader2);
var txtN1 = document.createElement('p');
var pTxt1 = document.createTextNode(
'Western society is based on well functioning but rapidly changing technological applications.\n' +
'However, mere specialisation is no longer enough modern technologistsneed to be capable of forming \n' +
'a global overview of the developments in their branch. Accordingly, graduates from the Faculty of \n' +
'Technology of University Drenthe are broadly educated technologists with an eye for innovation, \n' +
'management and social circumstances. The Faculty of Technology offers a four-year study program \n' +
'Bachelor of ICT.');
txtN1.appendChild(pTxt1);
body.appendChild(txtN1);
var theHeader3 = document.createElement('h2');
var theHeader3Txt = document.createTextNode('Course characters');
theHeader3.appendChild(theHeader3Txt);
body.appendChild(theHeader3);
var pTxt2 = document.createTextNode(
'Work is done on a problem-oriented, project basis, often involving external research, and the \n' +
'practical training periods are completed at interesting positions in the relevant industries.');
var txtN2 = document.createElement('p');
txtN2.appendChild(pTxt2);
body.appendChild(txtN2);
var theHeader4 = document.createElement('h2');
var theHeader4Txt = document.createTextNode('Internship');
theHeader4.appendChild(theHeader4Txt);
body.appendChild(theHeader4);
var pTxt3 = document.createTextNode(
'In the third and fourth year students have the opportunity to put the theory into practice. \n' +
'A company based traineeship of five months in the third year is part of the program and in the \n' +
'fourth year students work on a final graduation project for one semester. Both periods can be \n' +
'spent in the Netherlands or abroad.');
var txtN3 = document.createElement('p');
txtN3.appendChild(pTxt3);
body.appendChild(txtN3);
var linkN1 = document.createElement('a');
var linkTxt1 = document.createTextNode('Click for more information');
linkN1.setAttribute('href','http://www.hbo-i.nl/default.aspx?pageID=24');
linkN1.appendChild(linkTxt1);
body.appendChild(linkN1);
}
</script>
</head>
<body onload="buildbody()">
</body>
</html>
Как вы можете видеть, тело документа полностью пусто, и скрипт генерирует его,Вы также должны изменить дом следующим образом.