- - PR -
フレーム画面でのTargetの設定について
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-10-05 16:21
お疲れさまです。
いつも参考にさせていただいてます。 VB.NETです。助けてください!!! フレームで画面を上下に分けて、 上は「header」、下は「main」と名付けました。 上のheader部は、メニューボタンを並べて、クリックすると 下のmain部に指定した画面を出しています。 で、問題なのは、header部の一番右のボタンだけは、 メニューの切り替えボタンとして使いたいのですが、 <base target="main"> って書いているので main部にメニューボタンが表示されてしまいます。 target は ボタンごとに設定できませんか?ね・・・ | ||||||||
|
投稿日時: 2004-10-05 16:31
焼きそばです。
javaScriptのonclickイベントでtargetを変更してあげるとか。
ただし、.NET環境がないため動作確認などしておりません。 参考情報程度に捉えてください。 | ||||||||
|
投稿日時: 2004-10-06 11:49
焼きそばさん、ありがとうございます!
教えていただいた通りJavaScriptを入れてみたのですが(そのままコピペ) chgTargetが画面のメンバでは無いと言われて うまく実行できませんでした。 で、試行錯誤した結果 Page_Load時にボタンのAttributesで"target"を設定すると そのボタンだけ"target"が変更できるようでしたので 今回は、それで行こうと思います。 | ||||||||
|
投稿日時: 2004-10-06 13:41
そのボタンだけtargetが変わるようになりましたよ。 どのように画面遷移させてるのかわかりませんが(Response.Redirectとか) もし、ボタン押下の際にheader側のサーバ処理が必要ないのなら(画面がきりかわる だけでよいのなら)postbackしないようにしてボタンに onclick="parent.フレーム名.location.href='遷移先url' とか、ハイパーリンクにするとかでもいいと思います。
効かないような気がしたのですが。 [追記] あ、リンクボタンでしたか。リンクボタンだと<a>タグになるからtargetをうまく 指定できるのですね。本質的には焼きそばさんが紹介してくれた方法と同じですね。 リンクボタンで onclick=chgTarget() だと hrefに自動でスクリプトがはいるのと <base target="main"> の関係のせいか、たしかにうまくいかないですね。 [ メッセージ編集済み 編集者: べる 編集日時 2004-10-06 17:50 ] | ||||||||
|
投稿日時: 2004-10-06 17:07
べるさん、こんにちは!
アドバイスありがとうございます! chgTargetは、<HEAD>部に書きました。 あと、ボタンってリンクボタンです。 紛らわしくてスミマセン。 リンクボタン.Attributes("target") = "header" リンクボタン.Attributes("OnClick") = "javascript:document.Form1.target='header'" って書いたら、うまく動いているようです。 画面遷移は、Server.Transferです。 どのボタンで、どの画面に移動するかは、 押した人の権限によって違うのでPostBackは必要です。 |
1