• ベストアンサー

jsのドロップダウンの取得方法について教えて

jsのドロップダウンの取得方法についてお教えください。 必ず、valueを記述しないと、選択したドロップダウンのリストを表示させることができない仕組みになっているのでしょうか。 個人的には、getEventListenersとか、innnerHTMLとかいう形で、 alertでも、外部ページにリンクでも、console.logという形でもなくて、表面に出したいです。 また、ちなみに、2つ以上のドロップダウンリストを使うと、初めて、指定できるようなシステムを作りたいです。 後、formは崩したくないです。 そんな贅沢は実現不可能でしょうか。 <form name="nankai_f"> 出発駅は <select name="nankai_q1"> <option>選択肢</option> <option id="hoge">難波</option> <option>新今宮</option> <option>天下茶屋</option> <option>堺東</option> </select> です。 <p> 到着駅は <select name="nankai_q2"> <option>選択肢</option> <option>難波</option> <option>新今宮</option> <option>天下茶屋</option> <option>堺東</option> です。<p> 無理なら無理とはっきり言ってくださいね。

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

  • ベストアンサー
  • retorofan
  • ベストアンサー率33% (328/974)
回答No.1

あなたのご希望について、 「そんな贅沢は実現不可能でしょうか。」 いいえ、実現できます。 「無理なら無理とはっきり言ってくださいね。」 無理ではないので、サンプルコードをお示しします。 ドロップダウンのリストについて Q valueを記述しないと、選択したドロップダウンのリストを 表示させることができない仕組みになっているのでしょうか。 A いいえ、valueだけでなく、selectedIndex、text、textContentも使えます。 [仕様] ・現在のformをつかう (formは崩したくない) ・ドロップダウンのリストを表示させる ・2つ(以上)のドロップダウンリストを使って結果表示 (指定) </pre> <form name="nankai_f" onsubmit="return false"> 出発駅は <select name="nankai_q1"> <option selected>選択肢</option> <option>難波</option> <option>新今宮</option> <option>天下茶屋</option> <option>堺東</option> </select> です。 <p> 到着駅は <select name="nankai_q2"> <option selected>選択肢</option> <option>難波</option> <option>新今宮</option> <option>天下茶屋</option> <option>堺東</option> </select> です。</p> <p> <input id="result" type="text" value="" size="30"> <input type="reset" value="リセット"></p> </form> <script> (function(){ const form = document.nankai_f; //フォーム要素 form.onchange = function(){ //インデックスを取得 const i1 = form.nankai_q1.selectedIndex; const i2 = form.nankai_q2.selectedIndex; //禁止条件 if ( i1==0 || i2==0) { return false; } //テキストを取得 const text1 = form.nankai_q1.options[i1].text; const text2 = form.nankai_q2.options[i2].text; let str = text1 + " から " + text2 + " まで"; if (i1==i2) { str ="異なる駅名を選んでください。"; } form.result.value = str; //結果を表示 }; })(); </script>

semboku_love
質問者

お礼

どうもご丁寧にありがとうございました。

関連するQ&A

  • 複数のドロップダウンリストを連携するには?

    PHP+MySQLで作成しています。 hoge.phpでデータ処理を行い、hoge.htmlでhoge.phpをrequireしています。 このサイトの新規質問投稿フォーム(http://okwave.jp/oshiete_new.php3)の「投稿カテゴリー」のようなものを作りたいと思っています。 onChangeとdocument.hoge.submit()を使うところまではわかりましたが、以下のことについて教えてください。 <Q1> ドロップダウンリストのデータは、DBから取得します。 カテゴリーを選択した後、そのデータはどのように保持すればいいのでしょうか? 二つ目のドロップダウンリストを選択すると、一つ目のドロップダウンリストがリセットされます。 <Q2> <form name="all" action="entry.php> //フォーム全体 <input type="text" name="onamae"> //名前 <input type="text" name="email"> //E-Mail <form name="dd1" action="$PHP_SELF></form> //一つ目のドロップダウンリスト <form name="dd2" action="$PHP_SELF></form> //二つ目のドロップダウンリスト <form name="dd3" action="$PHP_SELF></form> //三つ目のドロップダウンリスト <textarea></textarea> //コメント欄 <input type="submit" value="送信"> </form> 上記のように<form>をネストできません。全データを送信するにはどのようにすればいいのでしょうか?

    • 締切済み
    • PHP
  • <FORM>タグを使ったドロップダウンメニュー

    以下のようなソースでドロップダウンメニューを作りました。 ---------------------------------------------------- <FORM> <SELECT NAME=list onchange=top.location.href=this.form.list.options[this.form.list.selectedIndex].value> <OPTION VALUE="index.htm">トップ <OPTION VALUE="new.htm">What's New! </SELECT> </FORM> ------------------------------------------------------ この時、「トップ」や「What's New!」などのボックス内に表示される文字の フォントサイズを大きくしたいのですが、何かよい方法はありませんでしょうか?? できればIEとNNどちらのブラウザからでも見れるようにもしたいです。 よろしくお願いします。

  • HTMLのドロップダウンリストについて

    <select> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> </select> 上記のようなドロップダウンリストがあり、 ドロップダウンリストが選択されている状態で、キーボードのテンキーを押すと、ドロップダウンリスト上の数字が選択状態になるような処理を行いたいのですが、どなかた教えて頂けないでしょうか。 例としてはANAのTOPページにある「搭乗日」が参考になると思われます。 http://www.ana.co.jp/

  • フォームのドロップダウンで未選択のチェックをしたいのですが、下記のよう

    フォームのドロップダウンで未選択のチェックをしたいのですが、下記のようにしたのですがうまくいきません。・・・原因は id[1] だと思うのですが、こういう場合JavaScriptには、どのように記述すればよいのでしょうか? ※ドロップダウンの name="id[1]" は、変更できません。 よろしくお願いします。 <script language="JavaScript"> <!-- function check(){ if(document.cart_quantity.id[1].selectedIndex == 0){ alert('選択してください'); return false; } return true; } //--> </script> <form name="cart_quantity" method="post" action="" onSubmit="return check()"> <select gtbfieldid="272" name="id[1]" id="attrib-1"> <option value="1" selected="selected">選択してください</option> <option value="2">いちご</option> <option value="3">みかん</option> <option value="4">りんご</option> </select> <input type="submit" value="送信" name="submit"> </form>

  • 天下茶屋で…

    天下茶屋ではじかれてしまいました…。 私は久しぶりに【新今宮⇔堺東】の通勤1ヶ月9,430円を購入しました。 路線図を見るかぎりは天下茶屋は区間内のはずです。 それなのに天下茶屋で引っ掛かってしまったのです…。新今宮や萩ノ茶屋は通れたのに…。 どなたか教えて下さい!!

  • ドロップダウンリストについて

    ドロップダウンリストを使いたいと考えています。 50名ほどの名前をドロップダウンリストにて選択し、 1度選択した名前を使えないようにしたいと考えています。 どうすればいいのでしょうか?? 教えてください。よろしくお願いいたします。

  • 定期券の利用法

    私は今、泉大津駅から天下茶屋経由で堺東まで通学定期うを持っています。。 でも塾で難波にも行かなくなってしまいました。。 こうゆう場合、天下茶屋から難波まで通学定期を買っていけますか??

  • ドロップダウンメニューで選択された内容通りにチェックを入れるJS

    ドロップダウンメニューで選択された内容通りにチェックを入れるJS をご教示下さい。 なお、本番環境で対象とするチェックボックスのnameは、全てchkで始まっている法則性があります。 よろしくお願い致します。 <html> <head> <script type="text/javascript"> <!-- // --> </script> </head> <body> <form> <select name="myselect"> <option selected>全てにチェック</option> <option>全てチェック解除</option> <option>奇数だけチェック</option> <option>偶数だけチェック</option> <option>1、6、8番だけチェック</option> <option>3番以降全てチェック</option> </select> <br> <input type="checkbox" value="1" name="chk01" checked>1番<br> <input type="checkbox" value="1" name="chk02" checked>2番<br> <input type="checkbox" value="1" name="chk03" checked>3番<br> <input type="checkbox" value="1" name="chk04" checked>4番<br> <input type="checkbox" value="1" name="chk05" checked>5番<br> <input type="checkbox" value="1" name="chk06" checked>6番<br> <input type="checkbox" value="1" name="chk07" checked>7番<br> <input type="checkbox" value="1" name="chk08" checked>8番<br> <input type="checkbox" value="1" name="chk09" checked>9番<br> <input type="checkbox" value="1" name="chk10" checked>10番 </form> </body> </html>

  • ○、×のドロップダウンリストを作りたい。

    エクセルで「○」か「×」かを選択できるように ドロップダウンリストを作りたいのです。 ドロップダウンリストに表示させたい 「○」「×」を別のセルに入力して、選択するように しているのですが、これを表示させないようにするには どうしたらよいのでしょうか? つまり、私がしていることは データ→入力規則→入力値の種類を「リスト」にする→元も値を「○、×が入力してあるセル を選択しているのです。」 この、元の値のセルの値が邪魔なのです。 どうぞ、よろしくお願いします。

  • ドロップダウンリストから、新ウィンドウへ移動するにはどうしたらよいのでしょうか?

    こんばんは。プログラム初心者ですが、よろしくお願いいたします。 現在、下記のスクリプトを書いておりますが、これを「新ウィンドウを開いて、そこに移動させる」にはどうしたらよいのでしょうか。 大変恐縮ですが、初心者ですので、下記を修正していただければ幸甚です。 <FORM name="form"><SELECT name="test"> <OPTION selected>リンク先を選ぶ</OPTION> <OPTION value="http://○○○.html">○○○</OPTION> <OPTION value="http://◎◎◎.html">◎◎◎</OPTION> <OPTION value="http://●●●.html">●●●</OPTION> </SELECT> <INPUT type="button" onclick="location.href=form.test.options[form.test.selectedIndex].value" name="button" value="移動"></FORM> なお、<FORM name="form">を<FORM target="blank" name="form">にしてみましたが、新ウィンドウは開かず、元のウィンドウのまま移動しました。 お手数ですが、よろしくお願い申し上げます。

    • ベストアンサー
    • HTML

専門家に質問してみよう