• ベストアンサー

option 選択による表示&非表示

<select name="var"> <option value="1">見せる</option> <option value="2">見せない</option> </select> <!--内容--> <table> <tr></td>内容</td></tr> </table> option 「見せる」を選択した場合、テーブル全体が<tabel>~</table>が表示、 option 「見せない」を選択した場合、テーブル全体が<tabel>~</table>が表示されなようにしたいです。 ご教授よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

こんばんは。 やり方はいろいろかと思いますが、とりあえず・・・。 まず、selectタグに、 <select name="var" onchange="toggleDisp(this);"> とかって書いて、テーブルにIDを付けます。 <table id="targetTable"> んで、Javascriptを function toggleDisp(obj){ if(obj.value == '1'){ // 見せる document.getElementById('targetTable').style.display="block"; }else{ // 見せない document.getElementById('targetTable').style.display="none"; } } とか・・・。 非表示にした時に、もともとの描画領域を残す場合は、 style.visibility="hidden" で。

oyaoyaoya777888
質問者

お礼

taka451213様 お礼が遅くなりました! ありがとうございました!

関連するQ&A

  • 同じものを繰り返し表示させる

    下記の(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> -----------------------------------

    • ベストアンサー
    • HTML
  • プルダウンによる表示制御方法

    プルダウンの選択内容による表示の切り替えを行いたいです。 例えば、AとCを選択すると下にあるテキストボックスが非表示になり Bを選択するとテキストボックスが表示するように制御を行いたいです。 <table align="center" border="0" cellpadding="0" cellspacing="0"> <tr><td> <form name="a"> <SELECT NAME="b"> <OPTION SELECTED> <OPTION VALUE="0">A <OPTION VALUE="1">B <OPTION VALUE="2">C </SELECT> </td></tr> <tr><td> <input type="text" size="6" maxlength="5" name="text1" value=""> </td></tr> </form> </table></form></td></tr></table> すみませんが、よろしくお願い致します。

    • ベストアンサー
    • HTML
  • 選択ボックスで選んだものに応じて値を変更する方法

    片方の選択ボックスで選んだものに応じて もう片方の選択ボックスの表示内容を変更したいと思います。 「なす」を選んだら30円 「きゅうり」を選んだら40円 「ねぎ」を選んだら50円 「選んで下さい。」を選んだら0円(初期値) としたいと思うのですが、下記内容をどのように 変更すればよろしいのでしょうか。 教えて下さい。 <table border="0" width="700"> <tr> <td width="50%"> <select name="野菜"> <option value="SENTAKU">選んで下さい。</option> <option value="NASU">なす</option> <option value="KYUURI">きゅうり</option> <option value="NEGI">ねぎ</option> </select> </td> <td> <select name="値段"> <option value="NEDAN">0円</option> </select> </td> </tr> </table>

    • ベストアンサー
    • HTML
  • optionで時間選択をしてというものを

    optionで時間選択をしていく施設予約のためのサイトを作っているのですが 下のコードのoptionタグのend1とend2のところで、end1で「21」が選択された場合、 end2の選択肢の「30」を選択できないようにしたいのですが可能でしょうか? <tr> <td>利用希望時間</td> <td> <select name="start1"> <option value="">-- <option>9<option>10<option>11<option>12 <option>13<option>14<option>15<option>16<option>17 <option>18<option>19<option>20<option>21 </select> : <select name="start2"> <option value="">-- <option>00 <option>30 </select> ~ <select name="end1"> <option value="">-- <option>9<option>10<option>11<option>12 <option>13<option>14<option>15<option>16<option>17 <option>18<option>19<option>20<option>21 </select> : <select name="end2"> <option value="">-- <option>00 <option>30 </select> <select name="color"> <option value="pink">赤 <option value="green">緑 <option value="skyblue">青 <option value="purple">パープル <option value="gray">グレー </select> </td> </tr>

  • inputの数値を参照しselectによる選択肢で決められた数値を表示したい

    JavaScript の素人なもので連続の質問となってしまいました。 下記のように field1 の値を参照し、 selectでの選択肢毎に決められた数値を field2 に表示したいのですが、 どういったscriptにすれば良いか、どなたかご教示をお願い致します。 ┏━━━━━┓ ┃ 例) 150   ┃(必ず1以上の数字が自動で入るinput="text" name="field1") ┗━━━━━┛ (↓ select) ┏━━━━━━┓  ┏━━━━━┓ ┃ 例) イ     ▼┃  ┃ 例) B    ┃(結果を表示させたいinput="text" name="field2" ) ┗━━━━━━┛  ┗━━━━━┛  │ イ │  │ ロ │  │ ハ │  └──┘         (select での選択肢)        │ イ │ ロ │ ハ │ 二 (field1値) │    │    │    │    1 ~100 │ A │ F  │ J  │ O 101~200 │ B │ G  │ K  │ P 201~300 │ C │ H  │ L  │ Q 301~400 │ D │ I  │ M  │ R 401~500 │ E │ H  │ N  │ S ※実装する際にはA~Sは数値になります。 以下に素人ながらのソースを記します。 <script type="text/javascript"> <!-- function selectarea(text) { var total = document.form1.field1.value; var choise = document.getElementById("area"); document.form1.field2.value = text; } // --> </script> <form action="" name="form1"> <table> <tr><td><input type="text" name="field1" size="30" value="150"></td></tr> <tr><td> <select id="area" onChange="selectarea(this[this.selectedIndex].value)"> <option selected="selected">選択して下さい</option> <option value="イ">イ</option> <option value="ロ">ロ</option> <option value="ハ">ハ</option> <option value="二">二</option> </select> </td></tr> <tr><td><input type="text" name="field2" size="30"></td></tr> </table> </form>

  • <SELECT>タグの折り返し

    テーブルで横幅100で囲った枠の中に、<select>タグを表示しています。 このとき、optionで表示する項目が長いと、テーブルの横幅が伸びてしまいます。 テーブルの横幅が伸びないようにする方法はないでしょうか? できれば、optionの項目を折り返し表示するとか、プルダウンしたときだけテーブルを突き抜けて表示するとかできれば良いのですが。 たとえば、こんな感じです。 <table border="1" width="100"> <tr>  <td>   <select name="test">    <option value="d1">1234567890123456789012345678901234567890</option>    <option value="d2">1234567890123456789012345678901234567890</option>    <option value="d3">1234567890123456789012345678901234567890</option>   </select>  </td> </tr> </table> 宜しくお願いします。

    • ベストアンサー
    • HTML
  • フォーム内の値のチェックについて

    このようなフォーム(aspでセレクトボックスの数は可変になります。)にてSubmit時に 同じ値が選ばれていたらalertを出すJavaScriptを作りたいのですが、 どのようなものを作ればよろしいでしょうか? <FORM name="TestForm" action="" method="POST" target=""> <TABLE border="1" cellspacing="0" cellpadding="0" width="100%"> <TR> <td>1位</td> <TD> <select name="Select1"> <OPTION value="449">[選択なし]</OPTION> <OPTION value="465">あ</OPTION> <OPTION value="466">い</OPTION> <OPTION value="467">う</OPTION> </select> <td>2位</td> <TD > <select name="Select1"> <OPTION value="449">[選択なし]</OPTION> <OPTION value="465">あ</OPTION> <OPTION value="466">い</OPTION> <OPTION value="467">う</OPTION> </select> <td>3位</td> <TD> <select name="Select1"> <OPTION value="449">[選択なし]</OPTION> <OPTION value="465">あ</OPTION> <OPTION value="466">い</OPTION> <OPTION value="467">う</OPTION> </select> </TR> </TABLE> <TR><TD> <INPUT type="submit" value=登録 name=B1 onClick=""> </TD></TR> </FORM>

  • スクロールバー項目ごとに、表示するものをかえる。

    こんにちは。 CGIでHTML::TEMPLATEをつかってプログラムをかいています。 そこで、スクロールバーを用いて、選択したものによって表示する内容を変えようと思っているのですが うまくいきません.私が現在書いたものはこのようなかんじです。 function filter(){ var tmp='<TMPL_VAR NAME=GETRIEBE> '; document.getElementById('waelen').innerHTML=tmp; } <form name="select"> <select name="waelen" onCharge="filter();"> <option value="werkstoff">werkstoff</option> <option value="getriebe">getriebe</option> </select> </form> <table><TMPL_LOOP NAME=ALLDATA> <tr><td><TMPL_VAR NAME=DATEI> </td> <span id="waelen"><td><TMPL_VAR NAME=WERKSTOFF> </td></span> ..... というふうに書いていっています。項目は本当はもう少しありますが。省略しました。 これを実装すると、スクロールバーから、項目を選択した際に、<TMPL_VAR NAME=WERKSTOFF>内容がかわるはずなのですが、 うまくいきません。最初の項目だけが、消されてしまいます。おそらく最初に画面を切り替えた時しか データがうけとれないのだとおもいます。 そこで、スクロールの項目を選ぶと、その項目に関連する内容が表示できたりできますか? ようするに、最初からHTMLで4パターンぐらいのテーブルを作っておき、 選択内容によって、コメントアウトをはずすような仕組みです。(そうしないと、HTMLテンプレートのせいでうまくデータがとれないきがしています。) なにか,いい方法があればよろしくお願いします。Javascriptに関する知識はあまりもっていないです。

  • セレクトボックス の 選択規制

    今、フォームで入力画面を作っています。 その中にセレクトボックスが4つアリ、現在「未選択」の場合エラーチェックをするようにしています。 そして、ここにもうひとつのチェックを追加したいのですが皆目見当が付きません・・・ 条件 kaikai、bunkai1、bunkai2、heikai  全てが不参加の場合 "参加する会を最低一つは選択してください。"と言うコメントをだすというものです。 皆様よろしくお願いいたします。 ********  現在の JavaScript  ********* <SCRIPT language="JavaScript"> <!-- //フォームチェック function fcheck() { if(document.form1.kaikai.value == "未選択") { window.alert("選択してください"); return false; } if(document.form1.bunkai1.value == "未選択") { window.alert("選択してください"); return false; } if(document.form1.bunkai2.value == "未選択") { window.alert("選択してください"); return false; } if(document.form1.heikai.value == "未選択") { window.alert("選択してください"); return false; } } //--> </SCRIPT> ********  HTML内のフォーム  ********* <table> <tr><th>1 ( * )</th> <td> <SELECT NAME="kaikai"> <OPTION selected VALUE="未選択">選択してください</OPTION> <OPTION VALUE="参加">参加</OPTION> <OPTION VALUE="不参加">不参加</OPTION> </SELECT></td></tr> <tr><th>2 ( * )</th> <td> <SELECT NAME="bunkai1"> <OPTION selected VALUE="未選択">選択してください</OPTION> <OPTION VALUE="参加">参加</OPTION> <OPTION VALUE="不参加">不参加</OPTION> </SELECT></td></tr> <tr><th>3 ( * )</th> <td> <SELECT NAME="bunkai2"> <OPTION selected VALUE="未選択">選択してください</OPTION> <OPTION VALUE="参加">参加</OPTION> <OPTION VALUE="不参加">不参加</OPTION> </SELECT></td></tr> <tr><th>4 ( * )</th> <td> <SELECT NAME="heikai"> <OPTION selected VALUE="未選択">選択してください</OPTION> <OPTION VALUE="参加">参加</OPTION> <OPTION VALUE="不参加">不参加</OPTION> </SELECT></td></tr> </table>

  • データベースの商品選択後に自動的に価格を表示したい

    MySQLの商品データをプルダウンで選択すると自動的にその単価を表示したい。下記の様なプログラムを作成中です。プルダウンで購買品目を選択すると自動的に単価(TP_MatrPrice)をその下側にある単価欄に表示したいのですが、どう記述したらいいのか?教えて頂けないでしょうか。 ?> <form method="POST"action="<? echo $_SERVER["PHP_SELF"]?>"> <table border="1"> <tr> <td>購買番号</td> <td><input type="text" name="detlno" size="30"></td> </tr> <tr> <td>発注日</td> <td><input type="text" name="detlhdate" size="30" value="<?php echo date(Y."/".n."/".j) ?>"></td> </tr> <tr> <td>担当者</td> <td> <form action=# method="post"> <select name="detlop"> <option value="1001">山田 太郎</option> <option value="2001">花田 花子</option> <option value="3001" selected>田中 健</option> </select> </td> </tr> <tr> <td>部署</td> <td><input type="text" name="detlbusyo" size="30"></td> </tr> <tr> <td>購買品目</td> <td> <form action=# method="post"> <select name="detlpcd"> <? $sql="SELECT * FROM TP_Material ORDER by TP_MatrCD"; $rest=mysql_query($sql, $db) or die("SQL処理エラー発生しました。"); while ($row=mysql_fetch_array($rest)) { print "<option value='" . mb_convert_encoding($row["TP_MatrCD"],"shift-jis","AUTO") . "'>" . mb_convert_encoding($row["TP_MatrName"],"shift-jis","AUTO") . "</option>"; } print "</select>\n"; ?> </td> </tr> <tr> <td>数量</td> <td><input type="text" name="detlpsu" size="30"></td> </tr> <tr> <td>単価</td> <td><input type="text" name="detlptan" size="30"></td> </tr> <tr> <td>金額</td> <td><input type="text" name="detlpkin" size="30"></td> </tr> <tr> <td>納期</td> <td><input type="text" name="detlpdate" size="30"></td> </tr> <tr> <td colspan="2"> <input type="submit" value="書き込む"> </td> </tr> </table> </form> <?

    • 締切済み
    • PHP

専門家に質問してみよう