こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

テーブルの行数を可変長にしたいです

JavaScriptで出力したテーブルを変更ボタンを押した時にテーブルの
データと行数を変更したいのですが、行数の変更がどうしても出来ません。
以下の「予定」のテーブルのように変更前が5行のテーブルを変更後が3行の
テーブルに変更するにはどのようにすればよろしいでしょうか。
ご教授お願いいたします。

----------
| 変更前 |
----------
|1:aaa |
----------
|2:bbb |
----------
|3:ccc |
----------
|4:ddd |
----------
|5:eee |
----------

----------
| 変更後 |
----------
|6:fff |
----------
|7:ggg |
----------
|8:hhh |
----------
|4:ddd |
----------
|5:eee |
----------

----------
| 予定 |
----------
|6:fff |
----------
|7:ggg |
----------
|8:hhh |
----------


----------------------------------------
以下サンプルソース
----------------------------------------
<html>
<head>
<title>サンプル</title>
</head>
<body>
<script type="text/javascript">
<!--
var data_1 = new Array();
data_1[0] = "1:aaa";
data_1[1] = "2:bbb";
data_1[2] = "3:ccc";
data_1[3] = "4:ddd";
data_1[4] = "5:eee";

var data_2 = new Array();
data_2[0] = "6:fff";
data_2[1] = "7:ggg";
data_2[2] = "8:hhh";

function change_table()
{
var i;
for(i = 0;i < data_2.length;i++){
document.getElementById("data"+i).innerHTML = data_2[i];
}
}

function create_table()
{
var i;
for(i = 0;i < data_1.length;i++){
document.write("<tr><td id=\"data"+i+"\"></td></tr>");
document.getElementById("data"+i).innerHTML = data_1[i];
}
}


// -->
</script>

<form>
<input type="button" value="テーブル変更" onClick="change_table()">
</form>

<table border=4>
<script type="text/javascript">
<!--
create_table();
// -->
</script>
</table>

</body>
</html>

投稿日時 - 2008-07-19 02:40:58

QNo.4187584

暇なときに回答ください

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

<html>
<head>
<title>サンプル</title>
</head>
<body>
<script type="text/javascript">
<!--
var data_1 = new Array();
data_1[0] = "1:aaa";
data_1[1] = "2:bbb";
data_1[2] = "3:ccc";
data_1[3] = "4:ddd";
data_1[4] = "5:eee";

var data_2 = new Array();
data_2[0] = "6:fff";
data_2[1] = "7:ggg";
data_2[2] = "8:hhh";
data_2[3] = "";//ここに注目して下さい
data_2[4] = "";//ここに注目して下さい

function change_table()
{
var i;
for(i = 0;i < data_2.length;i++){
document.getElementById("data"+i).innerHTML = data_2[i];
}
}

function create_table()
{
var i;
for(i = 0;i < data_1.length;i++){
document.write("<tr><td id=\"data"+i+"\"></td></tr>");
document.getElementById("data"+i).innerHTML = data_1[i];
}
}


// -->
</script>

<form>
<input type="button" value="テーブル変更" onClick="change_table()">
</form>

<table border=4>
<script type="text/javascript">
<!--
create_table();
// -->
</script>
</table>

</body>
</html>

投稿日時 - 2008-07-19 05:03:41

お礼

ご回答いただきありがとうございます。
テーブルID.deleteRow()で行を削除できました。

投稿日時 - 2008-07-19 09:50:25

あなたにオススメの質問