• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:セレクトメニューの連動、そしてページへのリンク)

セレクトメニューの連動、そしてページへのリンク

このQ&Aのポイント
  • セレクトメニューの連動とページへのリンクについて
  • セレクトメニューAからセレクトメニューB、さらにセレクトメニューCへの連動方法について
  • セレクトメニューの選択に応じて該当するページへジャンプする方法について

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

  • ベストアンサー
  • leap_day
  • ベストアンサー率60% (338/561)
回答No.3

こんにちは こんな感じですかね? <SCRIPT language="JavaScript"> <!-- menuI1 = [ [ ] , ["セレクト2","D","E","F"] , ["セレクト2","G","H"] , ["セレクト2","I"] ]; menuV1 = [ [ ] , ["","","","1.html"] , ["","",""] , ["","2.html"] ]; menuI2 = [ [ ] , ["セレクト3","J","K"] , ["セレクト3","L","M","N"] ]; menuV2 = [ [ ] , ["","3.html","4.html"] , ["","5.html","6.html","7.html"] ]; menuI3 = [ [ ] , ["セレクト3","O","P"] , ["セレクト3","Q"] , ["セレクト3","R","S","T","U"] ]; menuV3 = [ [ ] , ["","8.html","9.html"] , ["","10.html"] , ["","11.html","12.html","13.html","14.html"] ]; function set(n,l) { if(l == "sel1") { if(n ==0 ){ document.form.sel2.style.visibility = "hidden"; document.form.sel3.style.visibility = "hidden"; return false; } obj1 = document.form.sel1; obj2 = document.form.sel2; obj3 = document.form.sel1.value; Item = menuI1; Value = menuV1; document.form.sel3.style.visibility = "hidden"; } if(l == "sel2") { if(n ==0 ){ document.form.sel3.style.visibility = "hidden"; return false; } obj1 = document.form.sel2; obj2 = document.form.sel3; obj3 = document.form.sel2.value; Item = menuI2; Value = menuV2; if(document.form.sel1.selectedIndex == 2) { Item = menuI3; Value = menuV3; } } if(obj3 == "") { len = obj2.options.length; for (i=len-1; i>=0; i--) { obj2.options[i] = null; } obj2.style.visibility = "visible"; for(i=0; i<Item[n].length; i++) { obj2.options[i] = new Option(Item[n][i],Value[n][i]); } } else { location.href=obj3; } } // --> <!-- function url(n) { location.href=n; } //--> </SCRIPT> <form name="form"> <select name="sel1" onChange="set(this.selectedIndex,'sel1')"> <option value="">セレクト1</option> <option value="">A</option> <option vlaue="">B</option> <option vlaue="">C</option> </select> <select name="sel2" style="visibility:hidden" onChange="set(this.selectedIndex,'sel2')"> </select> <select name="sel3" style="visibility:hidden" onChange="url(this.value)"> </select> </form>

L7652
質問者

お礼

おぉ~、まさにこんな感じです! ありがとうございました! 助かりました♪

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

>AもBも選ばないとCは選択できないようにしたいのです… CのonChangeのfunctionの中で、AとBのselectedIndexが0じゃない ことをチェックすればいいでしょう。 もしくはAを選ぶことによってBのメニューを表示し、 Bを選ぶことによってCのメニューを表示する・・・ とするとよいでしょう。

L7652
質問者

補足

あー、再びありがとうございます…と言いたいのですが、そうでもなくて、 質問を整理しますと、 セレクトA:検索サイト       WEBサイト       携帯サイト となっており、 例えば、「検索サイト」を選択した場合、 セレクトB:大手サイト       普通サイト みたいな感じで、 「大手サイト」を選択すると、 セレクトC:Yahoo       Google       excite この後、Yahooを選ぶと、Yahooのページに行く、といった具合です。 (セレクトAでWEBサイトを選んだ場合は、 セレクトBでは、公式サイト         一般サイト の2つだけが表示される… といった具合に、それぞれのセレクトで選んだものによって表示は変わる感じです。)

全文を見る
すると、全ての回答が全文表示されます。
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>「セレクトCを選んだときに該当ページへジャンプ」 selectCにoptionでvalueをそれぞれのurlにしておき onChangeでlocation.hrefにその値を指定してやればいいでしょう。 単純に書くとこんな感じ。 <select onChange="location.href=this.value"> <option value="">選択して</option> <option value="http://www.yahoo.co.jp">Yahoo</option> <option value="http://www.google.co.jp">Google</option> </select> ※実際にはエラー回避などいれてfunction化することになるでしょう。

L7652
質問者

補足

あー、その方法も使ってみたのですが、それでは最初からセレクトCも選択できてしまいました…。 セレクトA、セレクトB、そしてセレクトCと、AもBも選ばないとCは選択できないようにしたいのです…。 ※質問文訂正 <select name="s" onChange="popJump(this)"> の「onChange="popJump(this)"」は、ミスでした。正しくは、 <select name="s"> でした。申し訳ありません。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • セレクトメニュー選択でもう一つセレクトメニューを出す

    「ブロック名」のセレクトメニューを選択すると、選択した項目によってもう一つ「部署名」のセレクトメニューが出て選択するようにしたいと思い、途中まで作成しました。 しかし、「ブロック名」を「Aブロック」選択しても「部署名」が「Bトップ~」が出てしまいます。 何がおかしいのか分からないので、ぜひ教えてください。 よろしくお願いいたします。 menuItem = [  ["Aトップ","A本部","B本部","C本部"], ["Bトップ","1本部","2本部","3本部"], ["Cトップ","あ本部","い本部","う本部"],         ["Dトップ","●本部","▲本部","◆本部"] ]; function setMenuItem(n) { len = document.form2.BUSYO.options.length; for (i=0; i<len; i++) { document.form2.BUSYO.options[i] = null; } document.form2.BUSYO.style.visibility = "visible"; for (i=0; i<menuItem[n].length; i++) { document.form2.BUSYO.options[i] = new Option(menuItem[n][i],menuItem[n][i]); } ---------------------------------------------------------------- <SELECT size="1" name="Block" onChange="setMenuItem(this.selectedIndex)"> <OPTION selected value="0">選択してください</OPTION> <OPTION value="a-block">Aブロック</OPTION> <OPTION value="b-block">Bブロック</OPTION> <OPTION value="c-block">Cブロック</OPTION> <OPTION value="d-block">Dブロック</OPTION> </SELECT> <SELECT size="1" name="BUSYO" style="visibility:hidden"> <OPTION selected value="0">選択してください</OPTION> </SELECT>

  • セレクトメニューの4連動

    いつも参考にさせて頂いております。 javascript初心者です。 現在、javascriptにてセレクトメニューの4連動を作成しているのですが、4つ目のセレクトメニューを正常に動かすことが出来ません・・・。何とか3つまでは動くようになったのですが・・・。忙しいところを申し訳ありませんが、教えて下さい。 一つ目のセレクトで、地域の選択 二つ目のセレクトで、県の選択 三つ目のセレクトで、「プレイスポット」か「食事」の選択 四つ目のセレクトでは、 プレイスポット名(三つ目でプレイスポット選択時) お店名(三つ目で食事選択時) 上記したようにしたいのです。宜しくお願いします。 <html> <head> <script type="text/javascript"> <!-- var area=0; function setA(n) { aa=n; data1 = [ ["東京","神奈川"], ["大阪","神戸"], ]; len = document.form1.box_a.options.length; for(i=len-1; i>0; --i) document.form1.box_a.options[i] = null; if(n!=0) { document.form1.box_a.style.visibility = "visible"; for(i=0; i<data1[n-1].length; i++) document.form1.box_a.options[i+1] = new Option(data1[n-1][i]); } setB(0); } function setB(n) { data2 = [ [["プレイスポット","食事"],["プレイスポット","食事"]], [["プレイスポット","食事"],["プレイスポット","食事"]] ]; len = document.form1.box_b.options.length; for(i=len-1; i>0; --i) document.form1.box_b.options[i] = null; if(n==0)return; document.form1.box_b.style.visibility = "visible"; for(i=0; i<data2[aa-1][n-1].length; i++) document.form1.box_b.options[i+1] = new Option(data2[aa-1][n-1][i]); setC(0); } function setC(n) { data3 = [ [[["としまえん","よみうりランド"],["キハチ","久兵衛"]]], [[["江ノ島","鎌倉"],["カレーミュージアム","中華街"]]], [[["ユニバーサルスタジオ","天王寺動物園"],["かに道楽","金龍ラーメン"]]], [[["須磨海浜水族園","グリコピア"],["コンチェルト","六甲山牧場"]]] ]; len = document.form1.box_c.options.length; for(i=len-1; i>0; --i) document.form1.box_c.options[i] = null; if(n==0)return; document.form1.box_c.style.visibility = "visible"; for(i=0; i<data3[aa-1][n-1][n-1].length; i++) document.form1.box_c.options[i+1] = new Option(data3[aa-1][n-1][n-1][i]); } //--> </script> </head> <body> <form name="form1"> <select name="sel1" onChange="setA(this.selectedIndex)"> <option value="0" selected>▼選択してください</option> <option value="1">関東</option> <option value="2">関西</option> </select> <select name="box_a" onChange="setB(this.selectedIndex)"><option value="0" selected>---------------</option></select> <select name="box_b" onChange="setC(this.selectedIndex)"><option value="0" selected>---------------</option></select> <select name="box_c" onChange=""><option value="0" selected>---------------</option></select> </form> </body> </html>

  • セレクトメニューからもう一つのセレクトメニューを選択したか確認

    「ブロック名」のセレクトメニューを選択すると、選択した項目によってもう一つ「部署名」のセレクトメニューが出て選択するようにしました。 送信前に「ブロック名」だけでなく、「部署名」も選択したかそうか確認したのですが、どうしでも出来ません。 いろいろ試しても出来なくて困っています。 ぜひ教えてください。 よろしくお願いいたします。 ---------------------------------------------------------------- menuItem =[[" "], ["(2) 部署を選択 ","あああ","いいい"],      ["(2) 部署を選択 ","ううう","えええ"], ["(2) 部署を選択 ","おおお","かかか"],      ["(2) 部署を選択 ","ききき","くくく"]]; function setMenuItem(n) { len = document.form2.BUSYO.options.length; for (i=0; i<len; i++) { document.form2.BUSYO.options[i] = null; } document.form2.BUSYO.style.visibility = "visible"; for (i=0; i<menuItem[n].length; i++) { document.form2.BUSYO.options[i] = new Option(menuItem[n][i],menuItem[n][i]); } ---------------------------------------------------- <SELECT size="1" name="AREA" onchange="setMenuItem(this.selectedIndex)" style="color : #3d3d3d;"> <OPTION value="0" selected>(1) ブロックを選択 </OPTION> <OPTION value="Aブロック">Aブロック</OPTION> <OPTION value="Bブロック">Bブロック</OPTION> <OPTION value="Cブロック">Cブロック</OPTION> <OPTION value="Dブロック">Dブロック</OPTION> </SELECT> <SELECT size="1" name="BUSYO" style="color : #3d3d3d;visibility : hidden;"> <OPTION selected value="0"></OPTION> </SELECT> ---------------------------------------------------------------- 確認用 if(document.form2.AREA.value=="0"){ alert("ブロックを選択してください"); return false; } return true; }

  • 複数のセレクトメニューを制御するとき・・・

    どなたかお手すきでしたら、稚拙な質問にお付き合いお願い致します。 ネットで探した方法で、セレクトメニュー1の項目を選択したときにセレクトメニュー2の項目を変化させる制御をしています。 このフォームでDBにvalue値(1,2など数値で)を送信するようにしたいのですが この方法ですとセレクトメニュー2のvalue値が0(NULL)となってしまい上手く送信できません。 配列に文字列を入れていますし、DBの型をintにしているので0になってしまっていると思うのですが、 文字列としては送信したくはありません。 どのような方法でしたら文字列ではなく、上手くvalueに数値を入れることが出来るでしょうか。 どうかよろしくおねがいします。 以下使用しているコードです。 <html> <head> <title>テストテスト</title> <script language="JavaScript"><!-- menuItem = [ [], ["あああ","あああ2","あああ3","あああ4","あああ5"], ["いいい"], ["ううう","ううう2"], ["えええ","えええ2","えええ3","えええ4"] ]; function clearOption(len){ var i; for (i=0; i<len; i++){ document.aaa.bbb.options[i] = null; } } function setMenuItem(n){ optlen = document.aaa.bbb.options.length; while(optlen > 0){ clearOption(optlen); optlen = document.aaa.bbb.options.length; } if (menuItem[n].length > 0){ for (i=0; i<menuItem[n].length; i++){ document.aaa.bbb.options[i] = new Option(menuItem[n][i],menuItem[n][i]); } } } // --></script> </head> <body> <form name="aaa"> <select name="Maker" onChange="setMenuItem(this.selectedIndex)"> <option value="" selected>--- 選択してください ---</option> <option value="1">ひとつ</option> <option value="2">ふたつ</option> <option value="3">みっつ</option> <option value="4">よっつ</option> </select> <select name="bbb"> <option value="" selected>--- 選択してください ---</option> </select> </form> </body> </html>

  • 2番目のセレクトメニュー選択項目に応じてリンク先を変えたい

    説明が下手糞な事お許し下さい。 javaを使ったセレクトメニューをウェブサイトに導入しようと、ネットで調べ、試行錯誤を繰り返し、大雑把な形は出来たのですが、やはりどうもうまくいきません。 やりたいことは、一つ目のセレクトメニュー(色)を選び、二つ目のセレクトメニュー(コンピューター)を選ぶと、個々に指定したアルファベットのリンクを表示したいのですが・・・ 以下のソースだと、初期状態では、ABCの3項目が最初から現れており、二つ目のセレクトメニューを選ぶと必ず、上段はA・中段はB・下段はCと出てしまい、一つ目を選びなおすと前のリンクが残ったままになっております。 黒のmacを選ぶとAを、 白のetcを選ぶとAを、 赤のWindowsを選ぶとCを、 といった感じで個々にリンク先を変えることができ、一つ目のセレクトメニューを選びなおすと前のリンク先の結果の表示が消える方法、初期状態でアルファベットのリンクを出さない方法は無いでしょうか? ご存知の方、どうかアドバイスをお願い致します。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>無題ドキュメント</title> <script language="JavaScript"><!-- menuItem = [ ["windows","mac","etc"], ["windows","mac","etc"], ["windows","mac","etc"], ]; function setMenuItem(n) { len = document.myForm.Computer.options.length; for (i=len-1; i>=0; i--) { document.myForm.Computer.options[i] = null; } for (i=0; i<menuItem[n].length; i++) { document.myForm.Computer.options[i] = new Option(menuItem[n][i],menuItem[n][i]); } } function setTable(selOBJ) { for (i=1; i<=3; i++) { if (document.all) document.all["tbl"+i].style.visibility = "hidden"; if (document.layers) document.layers["tbl"+i].visibility = "hidden"; } n = selOBJ.selectedIndex + 1; if (document.all) document.all["tbl"+n].style.visibility = "visible"; if (document.layers) document.layers["tbl"+n].visibility = "visible"; } // --></script> </head> <body> <form name="myForm"> <select name="Maker" onChange="setMenuItem(this.selectedIndex)"> <option value="black">黒</option> <option value="white">白</option> <option value="red">赤</option> </select> <select name="Computer" onchange="setTable(this)"> <option value="windows">windows</option> <option value="mac">mac</option> <option value="etc">etc</option> </select> </form> <div id="tbl1" class="tbl"><a href="http://www.yahoo.co.jp/">A</a></div> <div id="tbl2" class="tbl"><a href="http://www.yahoo.co.jp/">B</a></div> <div id="tbl3" class="tbl"><a href="http://www.yahoo.co.jp/">C</a></div> </body> </html>

  • セレクトメニュー連動のテキストをクリアにしたい

    下記のサンプルがあります。 <html> <head> <title>form TEST</title> <script> <!-- menuItem = [["-選んで下さい-","いち","に","さん"], ["-選んで下さい-","ひい","ふう","み"], ["-選んで下さい-","もの","じ","とり"]]; function check(){ len = document.form.three.options.length; for (i=0; i<len; i++){ document.form.three.options[i] = null; } n = document.form.one.value; if(n == "1"){document.form.three.style.visibility = "visible"; for (i=0; i<menuItem[0].length; i++){ document.form.three.options[i] = new Option(menuItem[0][i],menuItem[0][i]); } }else if(n == "2"){document.form.three.style.visibility = "visible"; for (i=0; i<menuItem[1].length; i++){ document.form.three.options[i] = new Option(menuItem[1][i],menuItem[1][i]); } }else if(n == "3"){document.form.three.style.visibility = "visible"; for (i=0; i<menuItem[2].length; i++){ document.form.three.options[i] = new Option(menuItem[2][i],menuItem[2][i]); } } } msgtxt = new Array(); for (i=0; i<3; i++){msgtxt[i] = new Array(); } msgtxt[0][0] =" "; msgtxt[0][1] ="あいうえお"; msgtxt[0][2] ="かきくけこ"; msgtxt[0][3] ="さしすせそ"; msgtxt[1][0] =" "; msgtxt[1][1] ="たちつてと"; msgtxt[1][2] ="なにぬねの"; msgtxt[1][3] ="はひふへほ"; msgtxt[2][0] =" "; msgtxt[2][1] ="まみむめも"; msgtxt[2][2] ="やゆよ"; msgtxt[2][3] ="わゐうゑを"; function txtchg(){ x = document.form.two.selectedIndex; y = document.form.three.selectedIndex; document.form.four.value = msgtxt[x][y]; } // --> </script> </head> <body onLoad="check()"> <form name= "form"> Value1 <select name="one" onchange="check()"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> Value2 <select name="two" onchange="check()"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> Value3 <select name="three" style="visibility:hidden" onchange="txtchg()"> </select> Value4 <textarea name="four" rows="1" cols="10"></textarea> </form> </body> </html> これは、Value1の選択値によってValue3の選択肢を変えて、Value2とValue3の選択値の組み合わせの結果をValue4に記入するという動作のサンプルです。 でもこれですと、Value2とValue3の結果でValue4に記入された後に、Value1やValue2を変更した場合、Value3は初期値に戻るのですが、Value4はそのまま表示されたままになってしまいます。本当はValue3が初期値に戻ったのだから、その場合はValue4をクリアにしたいのですが。 どこをどう修正すればその動作が可能になるのか、ご教示お願い致します。

  • メニューの選択項目に応じて、もう1つのメニューの内容を変更する方法

    メニューの選択項目に応じて、もう1つのメニューの内容を変更する方法 2つのコンボがります。 1個目は、メーカーを選択します。 2個目は、機種を選択します。 下記ソースでは、valueの値が取得でいないようです。 (例) makerでドコモを選択したらvalueに1をセット sendwayでドコモ機種(2)を選択したらvalueに2をセット このようなことを実現したいのですが... よろしくお願いします。 <script language="JavaScript"><!-- menuItem = [["ドコモ機種(1)","ドコモ機種(2)"]["ドコモ以外機種"]]; function setMenuItem(n) { len = document.myForm.sendway.options.length; for (i=len-1; i>=0; i--) { document.myForm.sendway.options[i] = null; } for (i=0; i<menuItem[n].length; i++) { document.myForm.sendway.options[i] = new Option(menuItem[n][i],menuItem[n][i]); } } // --></script> <select name="maker" onChange="setMenuItem(this.selectedIndex)"> <option value="1" <?= $val?>>ドコモ</option> <option value="2" <?= $val?>>ドコモ以外</option> </select> <select name="sendway" > <option value="1" <?= $val?>>ドコモ機種(1)</option> <option value="2" <?= $val?>>ドコモ機種(2)</option> <option value="3" <?= $val?>>ドコモ以外機種</option> </select>

  • FORMデータを配列としてそうしんしたいのですが・・・

    JavaScriptでセレクトボックス内の値が変化したらもう一つあるセレクトリスト内の値が変更されるように組みました。 以下コード。 ----------------------- <HTML> <head> <script type="text/JavaScript"> <!-- menuItem = [["A","B","C","D","E"],       ["1","2","3"], ["あ","い","う","え","お","か"]]; function setMenuItem(n) { len = document.myForm.works.options.length; for (i=len-1; i>=0; i--) { document.myForm.works.options[i] = null; } for(i=0; i<menuItem[n].length; i++) { document.myForm.works.options[i] = new Option(menuItem[n][i],menuItem[n][i]); } } } //--> </script> </head> <body> <FORM name = "myForm"> <SELECT name="list" onChange="setMenuItem(this.selectedIndex)"> <option value="list1">リスト1 <option value="list2">リスト2 <option value="list3">リスト3 </SELECT> <SELECT name="works[]" MULTIPLE> <OPTION>A <OPTION>B <OPTION>C <OPTION>D <OPTION>E </SELECT> </FORM> </BODY> </HTML> ----------------------- でセレクトリスト内のデータを配列として送信したいのですがうまくいきません。 セレクトリストのnameはworks[]にしたら動作すらしなくなりました。 どなたかご教授願います。

  • 複数セレクトメニュー連動の追加の仕方について、教えてください

    こんにちは、javascriptを使ったセレクトメニュー連動について教えてください <BODY> <script language="JavaScript"> <!-- menuItem = [["--------"], ["北海道"], ["青森県","岩手県","宮城県","秋田県","山形県","福島県"], ["茨城県","栃木県","群馬県","埼玉県","千葉県","東京都","神奈川県"], ["新潟県","富山県","石川県","福井県","山梨県","長野県","岐阜県","静岡県","愛知県"], ["三重県","滋賀県","京都府","大阪府","兵庫県","奈良県","和歌山県"], ["鳥取県","島根県","岡山県","広島県","山口県"], ["徳島県","香川県","愛媛県","高知県"]] menuval = [["dammy"], ["1-1"], ["2-1"], ["3-1","3-2","3-3","3-4","3-5","3-6","3-7"], ["4-1","4-2","4-3","4-4","4-5","4-6","4-7","4-8","4-9"], ["5-1","5-2","5-3","5-4","5-5","5-6","5-7"], ["6-1","6-2","6-3","6-4","6-5"], ["7-1","7-2","7-3","7-4"]] function setMenu(n){ itemNum = menuItem[n].length; document.myForm.Computer.length = itemNum; for (i=0; i<itemNum; i++) { document.myForm.Computer.options[i] = new Option(menuItem[n][i],menuval[n][i]); } document.myForm.Computer.style.visibility = "visible"; } // --> </script> <form name="myForm" method="POST" action="test.php" enctype="multipart/form-data" accept-charset="UTF-8"> <select name="Maker" onChange="setMenu(this.selectedIndex)"> <option value="dammy">--------</option> <option value="omosiro">北海道地方</option> <option value="syougeki">東北地方</option> <option value="cinema">関東地方</option> <option value="game">中部地方</option> <option value="music">近畿地方</option> <option value="sports">中国地方</option> <option value="car">四国地方</option> </select> <select name="Computer" style="visibility:hidden"> <option value="dammy">--------</option> </select> <br> <input type="reset" value="全ての入力をやり直す" onclick="location.reload()"> <INPUT type="submit" value="phpファイルにフォームからの入力データを渡す"> </form> </BODY> 現在2つのセレクトメニュー連動まではできたのですが、さらにもう1段階追加しようとしてつまずいています。 まず1段階目のセレクトメニューで「東北地方」を選択したら、「青森県」「岩手県」などが右に新たなセレクトメニューとして出てきます。 その中からたとえば、「岩手県」を選択したら次に(つまり右側に)新たに「盛岡市」「宮古市」「平泉町」などが新たにセレクトメニューとして表示されるようにしたいのですがどうもうまくいきません 3段階目のセレクトメニューもうまく表示させる方法はないでしょうか。よろしくお願いします。

  • javascriptでセレクトメニューの連動と自動計算

    最近、javascriptの勉強をさせてもらっております。javascriptでは自動計算ができると聞き、ハードルが高いとは思うのですが、占い好きの私に以下の事に挑戦させて下さい。 セレクトメニューの連動を使用して、誕生月を選んだら、その月に応じて異なった好きな食べ物のメニューが表示されるという事がまず最初。 そして、誕生月の各月の項目にそれぞれ異なった数字を格納して下の「S」に代入し、それと同じように、食べ物のメニューの項目のそれぞれに3個ワンセットの異なった数字を格納して下の「A,B,C」に代入したいのです。 連動はここまでで、新たに好きな3桁の数字のセレクトメニューと 好きな2桁の数字のセレクトメニューを作り、独自の計算式(1)~(6)を経て、ラッキーナンバーを出すという事をしたいのですが、セレクトメニューの各月の項目に数字を格納というか、その項目を選ぶ事により、そこの項目に設定した数字を計算式に代入させる(Sに代入)やり方が解りません。 同様に食べ物のある項目を選択すると、その項目に設定した3個ワンセットの数字を計算式に代入させる(A,B,Cに代入)やり方が解りません。 解る部分は、ある書物を参考にして書いてみましたが、つなぎ合わせた感じになってしまって、すみません。そして説明の仕方がややこしくなってしまいましたがよろしくお願いします。(独自の計算式(1)~(6)の内容は気にしないで下さい) ---------------------------------------------------------------- <html> <head> <title>あなたのラッキーナンバー</title> </head> <body> <form name="calcuation"> //セレクトメニューの連動部分が解りません。こんな感じにしたいのですが。 私の誕生月は <select name="month" onChange="calculation();"> <option value="23">1月 // ここには数字の「23(Sに代入)」が格納されている <option value="12">2月 // ここには数字の「12(Sに代入)」が格納されている <option value="56">3月 <option value="89">4月 <option value="5" selected>5月 <option value="88">6月 <option value="70">7月 <option value="">8月 <option value="">9月 <option value="">10月 <option value="">11月 <option value="">12月 </select>で、 (例えば、3月を選択すると食べ物メニューが出て選択する) 好きな食べ物は <select name="food" onChange="calculation();"> <option>トマト <option value="8,24,200">マグロ //ここには数字の「8,24,200(A,B,Cにワンセットでそれぞれに代入)」が格納されている <option value="2,205,1555">みかん //ここには数字の「2,205,1555(A,B,Cにワンセットでそれぞれに代入)」が格納されている <option>納豆 <option selected>豆腐 <option>ラーメン </select> です つまり、1月生まれでマグロが好きな場合、選択した時、「S」→「23」「A」→「8」「B」→「24」「C」→「200」を同時に代入させたいです。 ここから下の部分は参考書を元に書いてみました。 私の好きな3桁の数字は <select name="number_1" onChange="calculation();"> <option>100 <option>200 <option>300 <option>400 <option selected>500 <option>600 <option>700 <option>800 <option>900 </select>で、私の好きな2桁の数字は <select name="number_2" onChange="calculation();"> <option>10 <option>20 <option>30 <option>40 <option selected>50 <option>60 <option>70 <option>80 <option>90 </select> あなたのラッキーナンバーは<input type="text" name="number_luckey" class="text_color" value="0" size="8" maxlength="6">です。 </form> </body> </html> <script type="text/javascript"> // この辺に何かの記述が必要ですよね。 function calculation() { // 好きな3桁の数字 var number_1 = parseInt(document.calcuation.number_1[document.calcuation.number_1.selectedIndex].text); // 好きな2桁の数字 var number_2 = parseInt(document.calcuation.number_2[document.calcuation.number_2.selectedIndex].text); // 独自の計算式(1) var number_3 = number_2 * 365;  // 独自の計算式(2) var number_4 = (number_3 / A) - S; // 独自の計算式(3) var number_5 = number_4 / B;  // 独自の計算式(4) var number_6 = number_5 * C; // 独自の計算式(5) var number_7 = number_1 * number_2 / 20 * 365; // 独自の計算式(6) var number_luckey = number_7 - number_6; document.calcuation.number_luckey.value = number_luckey; return; } </script>

【Katana 50 mkII】フォンアウト出力
このQ&Aのポイント
  • KATANA 50 mkIIの外部IRローダーとの連携について
  • PHONES/REC OUTから出力される音のキャビネット/マイクのシミューレーションのオフについて
  • 購入を検討している方へ
回答を見る

専門家に質問してみよう