
下記の(1)のような「1」~「3」まで選択可能なセレクトメニューにおいて、
「1」を選択すると(2)の部分を1つ、「2」を選択すると(2)の部分を2つ、「3」を選択すると(2)の部分を3つ、表示させるようにしたいと思っています。
(2)の部分を3つ書き、JavaScriptを使用して(1)のセレクトメニューで選択した数によって、
(2)の部分を1つ表示させたり、2つ表示させたり、3つ表示させたりすることはできました。
しかし、3つならまだよいのですが、5つ、6つ、それ以上となると、
(2)の部分を5つ、6つも同じことを書くのは面倒で、無駄が多いように思います。
(2)の部分を1つだけ書いた上で、(1)の選択した数の分だけ(2)を表示させる方法はないでしょうか。
よろしくお願いいたします。
(1)--------------------------------
<select name="id">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
-----------------------------------
(2)--------------------------------
<table>
<tr>
<td>
<select name="number">
<option value="1000">1000</option>
<option value="2000">2000</option>
<option value="3000">3000</option>
</select>
</td>
</tr>
<tr>
<td>
<select name="name">
<option value="sato">sato</option>
<option value="sakamoto">sakamoto</option>
<option value="hanada">hamada</option>
<option value="wakui">wakui</option>
</select>
</td>
</tr>
</table>
-----------------------------------
No.1ベストアンサー
- 回答日時:
いろいろやり方はあるでしょうけど、とりあえず
ただ同じデータを表示するなら以下のような感じで
繰り返し表示処理をするとよいでしょう。
selectタグの名前を変えたりするならもう少し
プログラム的な処理が必要になります。
<html>
<head>
<script language=javascript>
function view(){
var obj=document.getElementById('count');
var str="";
for(i=0;i<obj.value;i++){
str+=document.getElementById('hiddenArea').innerHTML;
}
document.getElementById('viewArea').innerHTML=str;
}
</script>
</head>
<body onLoad="view()">
<form>
<select id="count" onChange="view()">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</form>
<div id="hiddenArea" style="display:none;">
<table>
<tr>
<td>
<select name="number">
<option value="1000">1000</option>
<option value="2000">2000</option>
<option value="3000">3000</option>
</select>
</td>
</tr>
<tr>
<td>
<select name="name">
<option value="sato">sato</option>
<option value="sakamoto">sakamoto</option>
<option value="hanada">hamada</option>
<option value="wakui">wakui</option>
</select>
</td>
</tr>
</table>
</div>
<div id="viewArea"></div>
</body>
</html>
No.2
- 回答日時:
<html>
<head>
<title>copy</title>
<script type="text/javascript">
function ab(dd){
var TR = document.getElementsByTagName('tr');
for(var i=1;i<TR.length;i++){TR[i].style.display = "none";}
for(var i=1;i<dd+2;i++){TR[i].style.display = "block";}
}
</script>
</head>
<body>
<table>
<tr>
<td>
<select id="number" onchange="ab(this.selectedIndex)">
<option value="1000">1000</option>
<option value="2000">2000</option>
<option value="3000">3000</option>
</select>
</td>
</tr>
<script type="text/javascript">
var OPTION = document.getElementById('number').getElementsByTagName('option');
for(var i=0;i<OPTION.length;i++){
document.write('<tr>');
document.write('<td>');
document.write('<select name="name">');
document.write('<option value="sato">sato</option>');
document.write('<option value="sakamoto">sakamoto</option>');
document.write('<option value="hanada">hamada</option>');
document.write('<option value="wakui">wakui</option>');
document.write('</select>');
document.write('</td>');
document.write('</tr>');
}
var TR = document.getElementsByTagName('tr');
for(var i=1;i<TR.length;i++){TR[i].style.display = "none";}
</script>
</table>
</body>
</html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlの文字が縦書きになる
-
ホームページを作っていたらhtm...
-
スマホで、左右にスワイプして...
-
スマホでHTMLファイルを開いて...
-
HTMLでクロス抽出したい
-
レスポンシブで困っています・・
-
テーブルの行を折りたたみたい...
-
ホームページのサイトでhtm...
-
HTMLでデスクトップの画像がでない
-
ホームページの制作について教...
-
htmlの<input type=”file”>でア...
-
1つの「ホームページビルダー2...
-
パソコンのマイク機能
-
HTMLで画像をポップアップで表...
-
css初心者 フレックスボックス...
-
HTMLタグのあるCSVファイルを利...
-
HTML/CSSを使って写真のような...
-
GoogleSearchControlにホームペ...
-
Dreamweverは今も主流なんです...
-
動画と画像&タイトル2列を横並...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<SELECT>タグの折り返し
-
複数列を持ったリストボックス...
-
文字の横にプルダウンを表示さ...
-
セレクトメニューで2つの項目...
-
テーブル内でドロップダウンメ...
-
セレクトボックスの「選択して...
-
SELECT OPTIONの中身をコピペ...
-
optionのselectedは更新時は効...
-
メールフォームでプルダウンの...
-
検索するには?
-
HTMLのアクセスキーはselectに...
-
プルダウンメニュー(セレクト...
-
リストボックス内の文字について
-
falshファイルのtitolタグ
-
プルダウンメニューで中央表示
-
html select optionが左寄せに...
-
プルダウンを連続してだしたい...
-
フリーのカートCGIを基にカスタ...
-
SELECT要素の垂直位置
-
フォームの「キャンセル」ボタ...
おすすめ情報