Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   динамическое создание тадлицы (https://javascript.ru/forum/dom-window/1744-dinamicheskoe-sozdanie-tadlicy.html)

magistr_bender 12.09.2008 00:34

при создании динамической таблицы почемуто неполучается указать свойства целспэйсин и целпаддинг
вот код
var vjtwindow;
function create_control() {
if (!vjtwindow) {
        vjtwindow=document.createElement("table");
        vjtwindow.setAttribute("cellpadding","0");
        vjtwindow.setAttribute("cellspacing","0");
        vjtwindow.setAttribute("id","vij-table");


    var newRow=vjtwindow.insertRow(0);
    var newCell = newRow.insertCell(0);
        newCell.setAttribute("align", "right");
        newCell.innerHTML="<img src=\"skins/standart/images/21.png\" border=\"0\"/>";

    var newCell = newRow.insertCell(1);
        newCell.setAttribute("id","vjt-table-top");
        newCell.innerHTML="";

    var newCell = newRow.insertCell(2);
        newCell.setAttribute("align","left");
        newCell.innerHTML="<img src=\"skins/standart/images/24.png\" border=\"0\"/>";

    var newRow=vjtwindow.insertRow(1);
    var newCell = newRow.insertCell(0);
        newCell.innerHTML="<img src=\"skins/standart/images/29.png\" border=\"0\"/>";

    var newCell = newRow.insertCell(1);
        newCell.setAttribute("id","vjt-table-bottom");
        newCell.innerHTML="";

    var newCell = newRow.insertCell(2);
        newCell.setAttribute("align","right");
        newCell.innerHTML="<img src=\"skins/standart/images/28.png\" border=\"0\"/>";

    var newRow=vjtwindow.insertRow(1);
    var newCell = newRow.insertCell(0);
        newCell.setAttribute("id","vjt-table-left");
        newCell.innerHTML="";

    var newCell = newRow.insertCell(1);
        newCell.setAttribute("id","vjt-tab");
        newCell.setAttribute("vlign","top");
        newCell.innerHTML="<b>23</b>";

    var newCell = newRow.insertCell(2);
        newCell.setAttribute("align","right");
        newCell.setAttribute("id","vjt-table-right");
        newCell.innerHTML="";
document.body.appendChild(vjtwindow);
}
}


а именно по какойто причине
vjtwindow.setAttribute("cellpadding","0");
vjtwindow.setAttribute("cellspacing","0");

не оказывает никакого воздействия, пробовал закинуть в css но всёравно невыходит..

ZoNT 12.09.2008 00:37

vjtwindow.cellPadding = 0;
vjtwindow.cellSpacing = 0;


newCell.setAttribute("id","vjt-table-right"); зачем???
newCell.id = "vjt-table-right"; короче почти в 2 раза!!!

magistr_bender 12.09.2008 00:51

хм.. чёт не подумал..
а за подсказку пасиб

AndyRoot 09.03.2009 12:53

Здесь подробно расписано как программно строить и менять таблицы. Работает в IE, Firefox и Opera

Bajjy 23.07.2009 17:36

создаю таблицу, в принципе, стандартным методом:
var table = document.createElement('table');
	table.style.borderCollapse = 'collapse'
	table.style.position = "absolute"
	table.style.width = xlen*cellwd+'px'
	table.style.height = ylen*cellhg+'px'
	table.style.borderWidth = '0px'
	table.style.borderStyle = 'solid'
	table.id=tid
	for (var k = 0; k < 50; k++) {
		var row = table.insertRow(-1);
		for (var j = 0; j < 50; j++) {
			var cell = row.insertCell(-1);
			cell.style.width = cellwd+'px'
			cell.style.height = cellhg+'px'
			cell.style.borderWidth = '1px'
			cell.style.borderStyle = 'solid'
			cell.style.borderColor = '#cccccc'
			cell.innerHTML = " ";
		}

однако, после выполнения кода браузер начинает дико нагружать процессор. возможно, я что-то неправильно делаю?
firefox 3.5.1


Часовой пояс GMT +3, время: 04:50.