OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

セレクトメニューのリンク

  • すぐに回答を!
  • 質問No.190596
  • 閲覧数160
  • ありがとう数3
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 37% (18/48)

アイフレームを利用しているのですが
セレクトメニューでリンクするタグがありますよね?
普通だと、その同じ頁内にリンクされるのですが
アイフレームを利用しているので他の頁にリンクさせた員です。
セレクトメニューのリンクで他のフレーム(頁)にリンクさせるには
どうしたらいいですか?
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.3
レベル10

ベストアンサー率 50% (72/143)

こんにちはchoko21さん、xruzです。

self.if1.location.href で動作しましたか?
動かない場合は parent.if1.location.href でやってみてください。

こんな方法もありますよ

<html>
<head>
<title></title>
</head>
<script language="JavaScript">
<!--
function lnk(h) {
document.all("lnk").href=h.options[h.selectedIndex].value;
document.all("lnk").click();
}
//-->
</script>
<body>
<form name="f">
<select name="" size="1" onChange="lnk(this)">
<option value="javascript:void(0)">Select MENU
<option value="b.html">HTML B
<option value="c.html">HTML C
</select>
<a name="lnk" href="javascript:void(0)" target="B"></a>
</form>
<iframe name="B" src="about:blank" width="200px" height="200px" frameborder="1">
</iframe>
</body>
</html>

がんばってくださいね(~:~i
お礼コメント
choko21

お礼率 37% (18/48)

ありがとうございました。おかげで見事、リンクをインラインフレームの中に
表示させることが出来ました!
本当に助かりました!
投稿日時 - 2001-12-26 16:30:03
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.1
レベル11

ベストアンサー率 42% (103/245)

えぇと、おっしゃっていることがよく解らないのですが、 「インラインフレームの中に表示されているセレクトボックスから他のインラインフレームにリンクを飛ばしたい」 ということでしょうか?? でしたら、A.htmlに、b.htmlとc.htmlというページがインラインフレームで表示されていて、b.htmlの表示されているインラインフレームにfra2という名前が付けられているものと仮定して、 c.ht ...続きを読む
えぇと、おっしゃっていることがよく解らないのですが、
「インラインフレームの中に表示されているセレクトボックスから他のインラインフレームにリンクを飛ばしたい」
ということでしょうか??
でしたら、A.htmlに、b.htmlとc.htmlというページがインラインフレームで表示されていて、b.htmlの表示されているインラインフレームにfra2という名前が付けられているものと仮定して、

c.htmlに
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function jump(sel)
{
if (sel.options[sel.selectedIndex].value)
{
window.parent.fra2.location.href = sel.options[sel.selectedIndex].value;
}
}
// -->
</SCRIPT>
</HEAD>
<BODY>
<FORM>
<SELECT onChange="jump(this)">
<OPTION VALUE="">リンク
<OPTION VALUE="http://www.okweb.ne.jp/">OKWeb
<OPTION VALUE="http://www.goo.ne.jp/">Goo
</SELECT>
</FORM>

という感じでどうでしょう?
動作チェック済み、下記の参考サイトのスクリプトを参考に作成させていただきました。
補足コメント
choko21

お礼率 37% (18/48)

書き方がわかりにくくてごめんなさい!

つまり、普通の頁(a.htm)の中に
1つのインラインフレーム(b.htmが表示されていて、フレーム名はBと指定したとします)があって
a.htmにあるセレクトメニューのリンク先をb.htmが表示されているインラインフレームの中(B)に表示させたいんです。

a.htmのセレクトメニューのリンク先をどう指定して
Bに表示させるのか?・・・ということです。

説明が下手でごめんなさい。

このような指定の仕方はありますでしょうか?
投稿日時 - 2001-12-26 02:09:44


  • 回答No.2
レベル7

ベストアンサー率 41% (10/24)

普通のフレーム<frameset></frameset>じゃなくって、 <iframe></iframe>ですよね。 それだったら、parent.フレーム名.location.href= だと、a.htmがフレームの中に読まれるページの場合、たぶん動かないと思います。 self.フレーム名.location.href=  もしくは、 フレーム名. ...続きを読む
普通のフレーム<frameset></frameset>じゃなくって、
<iframe></iframe>ですよね。
それだったら、parent.フレーム名.location.href=
だと、a.htmがフレームの中に読まれるページの場合、たぶん動かないと思います。
self.フレーム名.location.href= 
もしくは、
フレーム名.location.href=
で動くと思います。
私は、iframe使ってないので、あんまり自信ないですが。。
iframeのnameは、念のため英数半角で・・・。

a.htm,b.htm,c.htm,d.htmが同じディレクトリにあるとした場合の
a.htmのソース例:

=====================================================================

<html>
<head>
<title>sample</title>
</head>
<body>
<form>
<select onChange="self.if1.location.href=this.options[this.selectedIndex].value">
<option>リンク先を選択</option>
<option value="c.htm">cを表示</option>
<option value="d.htm">dを表示</option>
</select>
</form>
<iframe src="b.htm" name="if1">
</iframe>
</body>
</html>

=====================================================================
optionのvalueにa.htmからの相対パス。
もしくは絶対パスを入れればイイと思います。
お礼コメント
choko21

お礼率 37% (18/48)

何度もご回答ありがとうございました。
私の変な説明でも、こんな丁寧に答えてくれて本当にありがとうございます。
とても助かりました!!教えていただいたやり方でやってみたらうまくいきました!
投稿日時 - 2001-12-26 16:32:20
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ