Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   DHTML/JS/CSS (http://www.flasher.ru/forum/forumdisplay.php?f=24)
-   -   создание таблицы средствами JavaScript (http://www.flasher.ru/forum/showthread.php?t=60527)

netstuff 12.07.2004 12:17

создание таблицы средствами JavaScript
 
хто-нипуть знает как в JS создать таблицу?
ну типа document.insertTable()

жду.

Baltika 12.07.2004 12:46

типа того

:cool:

Илья К 12.07.2004 14:16

Пару месяцев назад написал на своей странице код, который генерирует таблицу. Просто ради интереся. Геморрой, конечно...:)
Выглядело это примерно так:

Код:

[color=white]function generalTDCreating(widthValue, bgcolorValue, colspanValue, rowspanValue, contentValue)function generalTDCreating(widthValue, bgcolorValue, colspanValue, rowspanValue, contentValue)
{
                writeTable = writeTable + '<td width="' + widthValue + '"';
                writeTable = writeTable + ' bgcolor="' + bgcolorValue + '"';
                writeTable = writeTable + ' colspan="' + colspanValue + '"';
                writeTable = writeTable + ' rowspan="' + rowspanValue + '"';
                writeTable = writeTable + '>'
                writeTable = writeTable + contentValue + '</td>';
}

ну, и т.д...... Это только создание ячейки. Потом зацикливал это дело с tr'ами...

С использованием DOM'овского createElement, как предлагает Baltika, ясное дело, удобнее.

netstuff 12.07.2004 17:04

2 Илья К

э-э-э-э-э... чот сложно.
строка создается проще: document.getElementById('tableID').insertRow();


2 Baltika

function createTable(obj) {
tabola = document.createElement("table"); // Создаем элемент
document.insertBefore(tabola, obj);
}

ругается на /document.insertBefore(tabola, obj);/ - типа инвалид аттрибут :confused:

Илья К 12.07.2004 18:22

Цитата:

Оригинал написал(а) netstuff
2 Илья К

э-э-э-э-э... чот сложно.
строка создается проще: document.getElementById('tableID').insertRow();

Так говорю же, не подумал тогда про ДОМ, вот и парился больше чем надо...

netstuff 12.07.2004 18:30

:p :p :p

Baltika 12.07.2004 19:38

ага, у меня тож ругается, но можно так:
Код:

function newTable() {
var tbl = document.createElement("table");
var bord = document.createAttribute('border');
bord.value = '1';
tbl.setAttributeNode(bord);
document.body.appendChild(tbl);
//alert(tbl.getAttribute('border'));
}

:)

netstuff 12.07.2004 19:50

а у меня так получилось:

Код:

function tabolaNuova(obj) {
var tabola = document.createElement("table");
obj.appendChild(tabola);
tabola.border = "1";
var riga = tabola.insertRow();
var cellula = riga.insertCell();
cellula.innerText = "test";
}

дело было в том, что в качестве места для вставки я использовал дополнительный аттрибут функции, при глобальном обращении через document. а щаз я сразу указываю место размещения obj. во-о-о-о-о-от.

спасибо!


Часовой пояс GMT +4, время: 18:31.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.