Search
Calendar
  12345
6789101112
13141516171819
20212223242526
2728293031  
<< August 2017 >>
Sponsored links
COUNTER 2005/08/19
Total

Unique
あなたのブログのお値段は?
GoogleAdSense
なかのひと
New Entries
Recent Comment
Recent Trackback
Category
Archives
Profile
Links
mobile
qrcode
RSSATOM 無料ブログ作成サービス JUGEM
スポンサーサイト

一定期間更新がないため広告を表示しています

posted by: スポンサードリンク | - | | - | - |
IE でcreateElement("table")する時の注意

 また IE がちゃんと動いてくれない。

createElement() を使って tableタグ を生成する場合の注意。

javascript で tableタグ を生成する場合、こんなコードになると思う。

var table = createElement("table");

var tr = document.createElement( "tr" );
table.appendChild( tr );

var td    = document.createElement( "td" );
td.innerHTML = "ほげほげ";
tr.appendChild( td );

firefox では動くんだけど IE では動かない。
デバッグして table.innerHTML を調べてみてもちゃんと意図どおりの HTML が入ってる。

調べてみると IE は tbodyタグ をつけないとダメらしい。

var table = createElement("table");

// tbody を追加
var tbody = document.createElement("tbody");
table.appendChild(tbody);

var tr = document.createElement("tr");
table.appendChild(tr);

var td = document.createElement("td");
td.innerHTML = "ほげほげ";
tr.appendChild( td );


これで動いたよん。

posted by: Diz | web開発 | 01:45 | comments(2) | - |
スポンサーサイト
posted by: スポンサードリンク | - | 01:45 | - | - |
これ俺もはまったわw

ちなみにTableオブジェクトには
・insertRow
・deleteRow
っていうメソッドがあるよ。
大量に行を挿入する場合はappendChildの方が圧倒的に速かった気がするw
| Juno | 2009/09/27 11:25 AM |
ほほう、そんなメソッドもあるんだ。
そして、つかえねー(笑)

やり方が多いから混乱するわ。
メソッド数減らして、どもブラウザでも動くようにしてほし(;´ρ`)
| Diz | 2009/09/27 4:41 PM |