- PR -

動的なtargetの変更に成功…したが戻らない

1
投稿者投稿内容
ペンギン
常連さん
会議室デビュー日: 2003/11/06
投稿数: 39
投稿日時: 2003-11-11 22:06
はじめまして。ASP.NET(VB)開発1ヶ月の初心者です。

作成中のシステムで、一部リンクボタンをクリックしたときのみブラウザを新しく
立ち上げ、ボタン等の処理では同一ブラウザでリンクする仕様がありましたので、
こちらの過去ログを参照して以下のコードを記述し、動的にターゲットを
変更しようとしました。(ブラウザ:IE6.0)

(Page_Load)
If Not Page.IsPostBack Then
.....
linkButton.Attributes("OnClick") = "javascript:document.Form1.target='_blank'"
Button.Attributes("OnClick") = "javascript:document.Form1.target='_top'"
End If

(LinkButton_Click)
.....
Response.Redirect(Url)

(Button_Click)
.....
Response.Redirect(Url)

リンクボタンで新しいブラウザを開くところまでは上手くいったのですが、
リンクボタンをクリックした後にボタンをクリックしても新しいブラウザが
開いてしまいます。
動的に変更したターゲットを元に戻すには、どのようにすればよいでしょうか。
よろしくお願いします。
ペンギン
常連さん
会議室デビュー日: 2003/11/06
投稿数: 39
投稿日時: 2003-11-13 10:23
自己レスです。

他のログでサーバサイド処理とクライアントサイド処理の
タイミングについて触れられていましたが自分では
解決不能でしたので、Webサーバコントロールの
Buttonで駄目なら、とコントロールをHtml
InputButtonに変更してみたのですが、
今度はidとrunat="server"を指定してもイベントが
発生せず、これも検証まで行かぬまま断念しました。

結局新しいブラウザを開かない仕様に変更いたしました。
読んでくださった方お騒がせいたしました。
hirasane
常連さん
会議室デビュー日: 2003/10/31
投稿数: 28
投稿日時: 2003-11-17 20:04
こんばんは。
同様の機能を実装できたのですが、

片方(上手くいかないほう)のtarget指定をHTML内に
記述してみてはいかがでしょうか?

また、「blank」と「top」の2通りの指定であれば、
HTML内の指定を「top」にして、「blank」にしたい
場合は、JavaScriptでポップアップウィンドウでも
よろしいのではないかと思います。

あと、私は「javascript」という記述を入れると
何故かエラーが発生してしまうので外してます。
"document.Form1.target='_blank'"

どうですかね?
もうこのスレ見ませんかね?
ペンギン
常連さん
会議室デビュー日: 2003/11/06
投稿数: 39
投稿日時: 2003-11-18 09:02
hirasaneさん、ありがとうございました。
正直申しますと納期が切羽詰ってますので
こちらで検証するのは後回しになりそう
ですが、今後に役立てたいと思います。

そうこうしているうちに、どうも
「ラジオボタンの状態によって、ボタンを
クリックしたときのターゲットを変更する」
仕様が発生しそうです…。
(多分JavaScriptの世界の話ですよね)
1

スキルアップ/キャリアアップ(JOB@IT)