• ベストアンサー

忍jpで、プルダウンメニューのリンク先をiframeにしたいのですが。

現在、私はプルダウンを使用したhpを製作しているのですが、昔からどうしてもプルダウンメニューで躓いてしまいます。 色々なサイトを参考にしているのですが、中々iframe用のプルダウンメニューの参考サイトはありません。 忍者でiframe用プルダウンメニューを使用するには、どういう記述をすればいいのでしょうか? 噛み砕いた御回答を是非、お願いします。

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

  • ベストアンサー
  • goldfox
  • ベストアンサー率49% (123/249)
回答No.4

フレームを入れ子にしていたんですね。 でしたら、 parent.iframe.location を iframe.location にすれば動くと思いますが、いかがでしょうか。

arinomi
質問者

お礼

動作しました! お陰で助かりました、ありがとうございます。

その他の回答 (3)

  • goldfox
  • ベストアンサー率49% (123/249)
回答No.3

>やはり忍者では対応してないということなのでしょうか・…。 補足のソースでページを作り、ninjaにアップして問題なく動きました。 ですから、ソース自体には問題ないですし、ninjyaだからプルダウンはできないというわけではないです。 >ページでエラーが発生しました、となってできないのです。 右下に黄色い三角が出ますよね。 それをクリックしてエラーの詳細をここに書き出してみていただけますか?

arinomi
質問者

お礼

<html> <head> </head> <body bgcolor="#000000"> <iframe src="top.html"width="100%"height="100%"> </html> ←インデックスページ <html><head><title>インデックス</title><style type=text/css> <!-- body{ scrollbar-face-color:white; scrollbar-highlight-color:white; scrollbar-shadow-color:orange; scrollbar-3dlight-color:white; scrollbar-arrow-color:orange; scrollbar-track-color:#ff7a6b; scrollbar-darkshadow-color:white; border-width : 10px  10px 10px 10px; border-style : solid solid solid solid; border-color :#6d361f; } --> </STYLE> </head> <body bgcolor="#ff7a6b" text="#336600" link="#cc9966" vlink="#999966" alink="#339933"> <center> <br><br> <table border="0"><tr> <table style="border:4px dashed #ffffff;" cellspacing="0" cellpadding="5"> <tr><td bgcolor="#ffffff"> <TABLE border="0"cellpadding="10"> <TR> <TD> <form method=post> <select name="navi"style=background-color:#FFE4E1;color:darkorange;> <option value=>MENU <option value="">bbs <option value="">投稿作品 <option value="index.html">TOP </select> <input type=button value="go"style=background-color:#FFE4E1;color:darkorange; onClick="parent.iframe.location.href = this.form.navi.options[this.form.navi.selectedIndex].value"> </form> </TD> </TR> <tr><td align="right"><img src="sozai/title.gif"><td></tr> <TR> <TD align="center"> <IFRAME src="top.html"width="100%"height="100&"name="iframe"></iframe> </TD> </TR> </TABLE> </td></tr></table></TD> </tr></table> </center> </html>←中身のページ エラーの詳細は ライン:33 文字:1 エラー:'parent.iframe.location'はNullまたはオブジェクトではありません。 コード:0 URL:(略) です。

  • goldfox
  • ベストアンサー率49% (123/249)
回答No.2

えーと。 No.1への返信に書かれたソースで問題なく移動できるようですが。 できませんか? 「Go!」ボタンを押しても反応がないのでしょうか? それともフレーム内ではない場所にリンク先が表示されるのでしょうか?

arinomi
質問者

お礼

反応が無いのです。 やはり忍者では対応してないということなのでしょうか・…。 サーバーにメールでこの件について問い合わせ中なのですがそろそろ三日目で何も回答が無くて困っています。

arinomi
質問者

補足

メールが届きました<サーバーから 特に制限はされては居ないようなのですが… 記述に問題があればgoldfoxさんの方でも異常がでるはずですよね? ページでエラーが発生しました、となってできないのです。

  • goldfox
  • ベストアンサー率49% (123/249)
回答No.1

忍者でもどこでも同じだと思います。 「iframe用プルダウンメニュー」というのが、何か特殊なものなのか分かりませんが… プルダウンのソースの中に location.href= という記述はありませんか? これを parent.フレーム名.location.href= と書き換えれば、フレーム内に表示させることができると思います。 もっともページ構成(フレーム構成)によって書き方は変わってくると思いますが。 ソースを提示したほうが、もっと的確な回答が得られると思いますよ。

arinomi
質問者

お礼

<html><head> <title> メインページ </title> <style type=text/css> <!-- body{ scrollbar-face-color:white; scrollbar-highlight-color:white; scrollbar-shadow-color:white; scrollbar-3dlight-color:white; scrollbar-arrow-color:orange; scrollbar-track-color:white; scrollbar-darkshadow-color:white;} --> </STYLE> </head> <body bgcolor="#ff7a6b" text="#336600" link="#cc9966" vlink="#999966" alink="#339933"> <center> <br><br> <table border="0"><tr> <table style="border:4px dashed #ffffff;" cellspacing="0" cellpadding="5"> <tr><td bgcolor="#ffffff"> <TABLE border="0"cellpadding="10"> <TR> <TD> <form method=post> <select name="navi"> <option value="main.html">リンク </select> <input type=button value="Go!" onClick="parent.iframe.location.href = this.form.navi.options[this.form.navi.selectedIndex].value"> </form> </TD> </TR> <TR> <TD align="center"> <IFRAME src="top.html"width="1000"height="500"name="iframe"border="no"></iframe> </TD> </TR> </TABLE> </td></tr></table></TD> </tr></table> </center> </html> 御回答ありがとうございます。 忍者でもどこでも同じだと思います。<サーバーによっては特定のタグを禁止にしているところがあるのでこういう質問形式にしたのです。 現在↑の記述です。

arinomi
質問者

補足

すいません、記述が抜けていました。 index.htmlの中にmain.htmlをアイフレームで表示してmainの中にさらにiframeを表示する二重構造になっています。 この場合エラーになってしまうのでしょうか?

関連するQ&A