我有这样的代码:
var xPola = 10, //how many cols
yPola = 10, //how many cols
bokPola = 30, //size of cell
body = document.getElementsByTagName('body')[0];
var tablica = document.createElement('table');
body.appendChild(tablica);
for( var y = 0; y < yPola; y++ ) {
var rzad = document.createElement('tr');
tablica.appendChild(rzad);
for( var x = 0; x < xPola; x++ ) {
var pole = document.createElement('td');
pole.setAttribute('width', bokPola);
pole.setAttribute('height', bokPola);
rzad.appendChild(pole);
}
};
它在 FF、Chrome 和 Opera 中运行良好(它显示 10x10 的表格,30 像素的宽度和高度行)。在 IE 中没有任何反应。我检查了 firebug lite,它在 HTML 部分,在 BODY 标签内,但我什么也没看到。怎么了?
最佳答案
它需要一些调整:
var xPola = 10, //how many cols
yPola = 10, //how many cols
bokPola = 30, //size of cell
body = document.getElementsByTagName('body')[0];
var tablica = document.createElement('table');
body.appendChild(tablica);
var tbody = document.createElement('tbody');
tablica.appendChild(tbody);
for( var y = 0; y < yPola; y++ ) {
var rzad = document.createElement('tr');
tbody.appendChild(rzad);
for( var x = 0; x < xPola; x++ ) {
var pole = document.createElement('td');
pole.innerHTML=' ';
pole.style.width = pole.style.height = bokPola;
rzad.appendChild(pole);
}
}
IE 需要一个 <tbody>
在大多数情况下,不会显示空单元格,因此需要在其中留出空间。
关于javascript - 在 IE 中显示表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2442061/