Es lo que sucede cuando usas indiscriminadamente el document.write sin conocer realmente el DOM y cómo funciona.
Para eso creas una variable que se va rellenando con variable
+='nuevo valor' y al final introduces el código con innerHTML
Me tomé la molestia de pasarlo todo nuevamente
Código Javascript
:
Ver originalfunction genMatrices(filA, colA, filB, colB) {
c=new String();
e=document.getElementById('divMatrices');
c+='<table name"tblMatrices" id="tblMatrices" border=1>';
c+='<tr>';
c+='<td align="center" valing="middle">';
c+='<table name="tblMtzA">';
for ( i = 0; i < filA; i++) {
c+='<tr>';
for ( j = 0; j < colA; j++) {
c+='<td><input type="text" size="1" maxlength="2"/></td>';
}
c+='</tr>';
}
c+='</table>';
c+='</td>';
c+='<td align="center" valign="middle">';
c+='<table name="tblMtzB">';
for ( i = 0; i < filB; i++) {
c+='<tr>';
for ( j = 0; j < colB; j++) {
c+='<td><input type="text" size="1" maxlength="2"/></td>';
}
c+='</tr>';
}
c+='</table>';
c+='</td>';
c+='<td align="center" valign="middle">';
c+='<table name="tblMtzR">';
for ( i = 0; i < filA; i++) {
c+='<tr>';
for ( j = 0; j < colB; j++) {
c+='<td><input type="text" size="1" maxlength="2"/></td>';
}
c+='</tr>';
}
c+='</table>';
c+='</td>';
c+='</tr>';
c+='</table>';
//var matrices = document.getElementById('tblMatrices');
//document.getElementById('divMatrices').innerHTML = matrices;
e.innerHTML=c;
}
Un saludo.