- PR -

RegisterStartupScriptとポップアップ制限

1
投稿者投稿内容
kousuke
会議室デビュー日: 2005/12/01
投稿数: 5
投稿日時: 2005-12-02 13:25
現在VS.NET2003(VB.NET)でwebアプリケーションを作成しています。

↓仕様
あるページ(仮にAページとします)の入力項目にエラーがあった場合、エラー用のページ(aspx)を表示したい。
(エラー用のページ(aspx)はただの表示用です)
そのエラー用ページはその入力項目にエラーがあったページとは別Windowで表示したい。

で、
aspx.vbでの実装として、
Aページでエラーと判断したら、RegisterStartupScript("OpenNewWindow","<script language=""javascript"" window.open 〜)
として別Windowにエラー用のページ(aspx)を表示します。

↓↓

エラーページは表示されるのですが、ブラウザによってはポップアップ制限で制限が掛かって表示できなくなります。
このポップアップ制限が掛からなくする方法はあるのでしょうか?

何卒ご教授の程よろしくお願い致します。
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2005-12-02 13:37
こんにちは。

引用:

このポップアップ制限が掛からなくする方法はあるのでしょうか?


そんなのがあったら、ポップアップ制限の意味がなくなりますね。
というわけで、方法はないと思います。

どっかに書いとくしかないのでは。
「ポップアップウィンドウが出るので、制限していたら解除して下さい」とか。

それより、同じページ内にエラーメッセージを出すのは駄目なんですかね?
_________________
囚人のジレンマな日々
でっち6号
大ベテラン
会議室デビュー日: 2005/01/31
投稿数: 176
お住まい・勤務地: Kawasaki
投稿日時: 2005-12-02 13:45
こんにちは、でっちです。

ブラウザの挙動なので、各端末でブロックを解除してもらう他にどうしようもないです。

ただ、IEのポップアップブロックではプログラム的には、下記の様な挙動にすることで、
一応の対策になります。
1.ボタンクリック時のPostBack前のクライアントサイドのイベントでウィンドウを表示
 (「ただいま処理中です」とか。この時、固定ウィンドウ名にします。)
 →1.1.エラーが発生した場合は、エラー用のURLにして再表示
    (1と同じ固定ウィンドウ名で再度window.open)
 →1.2.正常時はウィンドウを閉じる

#window.openはまったく受け付けないようなブロックだとどうしようもないですけどね
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-12-05 22:01
ご紹介
http://www.codeproject.com/aspnet/asppopup.asp
1

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