人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

【JavaScript / HTML】自作するのがしんどいので質問です。

<td>hoge</td>
<td>はてな</td>
<td>てきとう</td>
<td>いろいろ</td>
というようなテキストブロックがあり、任意のブロック数毎に、</tr><tr>を挟み込みたいと思っています。
※新着ブロックを先頭に入れるので、<TR>を自動で表示させたい

3ブロック毎に</tr><tr>を表示する場合のサンプルをお願いします。IE,firefox にて稼動するジャストなご回答をいただいた場合、600point+いるかにて御礼させていただきます。


●質問者: naleringar
●カテゴリ:ウェブ制作
✍キーワード:firefox hoge HTML IE JavaScript
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● Mars
●600ポイント ベストアンサー

ちょっと細かい部分がわからないので、

実際のページへの応用が利くかわかりませんが、一応サンプルコードです。

<html>
<head>
<title>サンプル</title>
<style type="text/css">
td{border:solid 1px black}
</style>
<script type="text/javascript">
function sample(){
var tbl=document.getElementsByTagName('table')[0];//対象のテーブル取得
var C=3;//1行のセル数

var tds = tbl.getElementsByTagName('td');
var newTBODY = document.createElement('tbody');
var tdc=0;
var newTR;
for(var i=0;tds[i];i++){
if(tdc++==0) newTR=document.createElement('tr');
newTR.appendChild(tds[i].cloneNode(true));
if(tdc>=C) {
newTBODY.appendChild(newTR);
tdc=0;
}
}
while(tdc) {
newTR.insertCell(-1);
if(++tdc>=C) {
newTBODY.appendChild(newTR);
break;
}
}
tbl.replaceChild(newTBODY,tbl.tBodies[0]);
}
</script>
</head>
<body>

<table>
<td>hoge</td>
<td>はてな</td>
<td>てきとう</td>
<td>いろいろ</td>
<td>hoge</td>
<td>はてな</td>
<td>てきとう</td>
<td>いろいろ</td>
</table>

<input type="button" onclick="sample()" value="テーブル変換">
</body>
</html>
◎質問者からの返答

ありがとうございます。色々不足のある質問でお手数おかけします。テキストブロック=TDなので、概念は◎です。あと1点だけお願いがあります。

「ボタンを押したらソースの該当部分にTRタグを吐く」 または 「ファイルが呼び出された時に自動的に動く」のどちらかになればとてもありがたいです。

どうぞよろしくお願い申し上げます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ