JavaScriptでテーブル作成
1,2年前に、後で読もうと保存した資料があって
その後でが、つい先程訪れた。
その資料では、スクリプトによってテーブルを作成しており
しかもtbody、trなどcreateElementで作成していない。
結果的にはtbodyもtrも作成されてはいる。
//createElementでTABLEを作成 var elm_table = document.createElement('table'); elm_table.style.cssText = 'width:300;height:200'; for(var i = 0; i < 5; i ++) { //これがtrの代わりらしい var o_row = elm_table.insertRow(); //一つ目のセル作成 var elm_cell_1 = o_row.insertCell(); elm_cell_1.innerText = i + ' 1'; elm_cell_1.style.border = '1 solid #000'; //二つ目のセル作成 var elm_cell_2 = o_row.insertCell(); elm_cell_2.innerText = i + ' 2'; elm_cell_2.style.border = '1 solid #000'; } document.body.appendChild(elm_table);
で、こうなる↓
insertRow()でtr
insertCellでtdになるみたいで
それぞれappendChildは不要で
最後にtableをappendChildすればOKみたいだ。
bodyにtableタグだけを書いておけば
appendChildは使わずに済む。
追記
insertRow(0)にすると、1段目に作成される。
1だと2段目。
省略すると最後に追加される。
しかし、9とか10と数を多くして試してみると
予想と違う所に挿入されたりと、よくわからんな。
なんじゃこりゃ。
追記
他にも
deleteRow(5) //6段目を削除
moveRow(0, 3) //1段目を4段目に移動
などがあった。
追記
var td = elm.insertCell(); td.colSpan = 2;
colSpan、rowSpanのsは大文字。
追記
なんか乞食臭い。
たぶん三日くらい風呂入ってないからだろうな。
や、三日じゃすまないかも。