• ベストアンサー

次の事項をJavaScriptで作成するとどうなるか教えてください。

次の事項をJavaScriptで作成するとどうなるか教えてください。 1.選択ラジオボタンを1~5まで用意し、いずれかを選択して、「次へ」ボタンを押すとします。選択された番号に応じて違うページへリンクさせる。 2.ラジオボタンを選択するとページが変わる。 よろしくお願いします。

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

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

>1 *****これよりスクリプト部分***** var filename = new Array ("frcase1.html","case2.html","case3.html","case4.html","case5.html"); function kensa(){ num = document.form.radiob.length; for(i=0;i<num;i++){ if(document.mainform.radiob[i].checked){ break; } } return i; } function chnurl(newurl){ location.href = newurl; } function OpenWin(){ i = kensa() chnurl(filename[i]); } *****これまでスクリプト部分***** *****これより本体***** <form name="mainform"> <input type="radio" name="radiob" checked>ケース1 <br> <input type="radio" name="radiob">ケース2 <br> <input type="radio" name="radiob">ケース3 <br> <input type="radio" name="radiob">ケース4 <br> <input type="radio" name="radiob">ケース5 <br> <input type="button" value="次へ" onClick="OpenWin()"> </form> *****これまで本体***** >2 *****これよりスクリプト部分***** var filename = new Array ("case1.html","case2.html","case3.html","case4.html","case5.html"); function chnurl(i){ location.href = filename[i]; } *****これまでスクリプト部分***** *****これより本体***** <form> <input type="radio" name="radiob" onClick="chnurl(0)">ケース1 <br> <input type="radio" name="radiob" onClick="chnurl(1)">ケース2 <br> <input type="radio" name="radiob" onClick="chnurl(2)">ケース3 <br> <input type="radio" name="radiob" onClick="chnurl(3)">ケース4 <br> <input type="radio" name="radiob" onClick="chnurl(4)">ケース5 <br> </form> *****これまで本体***** で問題ないと思います。分かると思いますがどちらにしても var filename = new Array ("case1.html","case2.html","case3.html","case4.html","case5.html"); のcase?.htmlの部分は変えるページのURLを入れてください。

sakurako_o
質問者

お礼

親切かつ丁寧にご指導ありがとうございました。 こうやって質問をしてパパっとすぐ回答できる なんて、私にはすごいとしか言いようが・・・。 ありがとうございました。また、質問したときは どうかよろしくお願いしますね!!

sakurako_o
質問者

補足

フレーム分けをした場合どうしたらいいのでしょうか?

その他の回答 (2)

回答No.3

No.1のmousengokeです。 フレームの場合ですね。いずれの場合も 変化させるフレームにname="contfra"が指定されていた場合 location.href→parent.contfra.location.href とすればいいです。 あれ、元の 1 の例ちょっと間違ってますね。ついでに訂正しておきます。 num = document.form.radiob.length;→num = document.formname.radiob.length;

  • arukamun
  • ベストアンサー率35% (842/2394)
回答No.2

<HTML> <BODY> <FORM NAME=f> <INPUT TYPE=radio NAME=r VALUE="http://www.excite.com/">excite<BR> <INPUT TYPE=radio NAME=r VALUE="http://www.goo.ne.jp/">goo<BR> <INPUT TYPE=radio NAME=r VALUE="http://www.google.co.jp/">google<BR> <INPUT TYPE=radio NAME=r VALUE="http://www.infoseek.co.jp/">infoseek<BR> <INPUT TYPE=radio NAME=r VALUE="http://www.yahoo.co.jp/">Yahoo!<BR> <INPUT TYPE=button VALUE=次へ onClick=" for (i=0; i<document.f.r.length; i++){ if ( document.f.r[i].checked ){ window.open(document.f.r[i].value,'_self'); } } "> </BODY> </HTML> とか、onClick="~"の~部分を<SCRIPT></SCRIPT>で関数化しても良いと思います。 変更するところは解りますよね。

sakurako_o
質問者

お礼

親切かつ丁寧にご指導ありがとうございました。 こうやって質問をしてパパっとすぐ回答できる なんて、私にはすごいとしか言いようが・・・。 ありがとうございました。また、質問したときは どうかよろしくお願いしますね!!

関連するQ&A