OKWaveが大リニューアル!ただいまβ版公開中

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


OKWaveコミュニティー
新規ユーザー登録(無料)今すぐ登録しよう!!
はじめての方へ OKWaveではこんなことができます!
ピックアップ
特集一覧
ブラック会社の喜怒哀楽
ブラック会社の喜怒哀楽
現代を生き抜く知恵と努力!あなたの未来を明るく照らします!
OKWaveスタッフブログ
OKWaveスタッフブログ
OKWaveスタッフから便利でお得な情報をQ&Aと共にご紹介します!
好きだからこそ切ない!恋愛特集
好きだからこそ切ない!恋愛特集
「会いたいときに会えない」そんな切ない思いを恋愛で体験したことはありませんか?
その他の特集はこちらからご覧下さい
おすすめリンク

質問

質問者:topaz_37 ドロップダウンリストから、新ウィンドウへ移動するにはどうしたらよいのでしょうか?
困り度:
  • 困っています
こんばんは。プログラム初心者ですが、よろしくお願いいたします。

現在、下記のスクリプトを書いておりますが、これを「新ウィンドウを開いて、そこに移動させる」にはどうしたらよいのでしょうか。

大変恐縮ですが、初心者ですので、下記を修正していただければ幸甚です。

<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">にしてみましたが、新ウィンドウは開かず、元のウィンドウのまま移動しました。

お手数ですが、よろしくお願い申し上げます。
質問投稿日時:08/08/27 01:41
質問番号:4281581
この質問に対する回答は締め切られました。
最新から表示回答順に表示良回答のみ表示

回答

良回答20pt

回答者:yambejp formに名前をつけて管理するのはやめた方がいい
こんな感じでやってみるとよいのでは?

<script type="text/javascript">
function jump(url){
if(url=="") return;
window.open(url,"_BLANK");
}
</script>
<FORM>
<SELECT name="test">
<OPTION value="" selected>リンク先を選ぶ</OPTION>
<OPTION value="http://○○○.html">○○○</OPTION>
<OPTION value="http://◎◎◎.html">◎◎◎</OPTION>
<OPTION value="http://●●●.html">●●●</OPTION>
</SELECT>
<INPUT type="button" onclick="jump(this.form.test.value)" name="button" value="移動"></FORM>
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:08/08/27 09:49
回答番号:No.2
この回答へのお礼yambejp様、さっそくご回答いただき、誠にありがとうございました。
すべて無事に動作いたしました。
本当に助かりました。ありがとうございます。

それにしても無駄のない、とても美しいスクリプトですね。
私のような素人が申し上げるのも僭越ですが、非常に感動いたしました。

今後ともお力添えいただけますよう、よろしくお願い申し上げます。

回答

良回答10pt

回答者:okmotokun <script type="text/javascript">
function jump(){
l=document.form.test.options[document.form.test.selectedIndex].value
if(l==1)url="http://○○○.html";
if(l==2)url="http://◎◎◎.html";
if(l==3)url="http://●●●.html";
window.open(url,"blank");
}
</script>

<FORM name="form"><SELECT name="test">
<OPTION selected>リンク先を選ぶ</OPTION>
<OPTION value="1">○○○</OPTION>
<OPTION value="2">◎◎◎</OPTION>
<OPTION value="3">●●●</OPTION>
</SELECT>
<INPUT type="button" onclick="jump()" value="移動"></FORM>

とすれば、ご希望は叶うと思います。
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:08/08/27 02:39
回答番号:No.1
この回答へのお礼okmotokun様、さっそくご回答いただき、ありがとうございました。
さっそく試させていただきましたが、無事に動きました。
本当にありがとうございます。

ただ初心者の私には応用力がなく、下記のような問題が新たに起きてしまいました。

実は、1ページに複数のドロップダウンリスト(もちろん異なるURLにリンクされています)のFORMを置きたいのですが、エラーになってしまいます。

質問時の方法では、下記のように通し番号をふりますと、1ページにいくつでもFORMを置くとができました。
<FORM name="form1"><SELECT name="test1">
<FORM name="form2"><SELECT name="test2">

ところが今回、この方法は通用しなかったようです。

どうすれば1ページに複数のドロップダウンリストFORMを置き、そこから新ウィンドウを開くことができるのでしょうか。

重ね重ね恐縮ですが、ご教示いただけると、大変ありがたく思います。
よろしくお願いいたします。
最新から表示回答順に表示良回答のみ表示