2009-06-13 4 views
0

ASP.Net 2.0の使用外部JavaScriptファイルを使用したHyperLinkコントロールでASP.Netのポップアップウィンドウを開くにはどうすればよいですか?

a。親ASPXページでは、HyperLinkコントロールをクリックした後、ポップアップウィンドウで(子)ページをモーダルとして開く必要があります。

b。その後、そのポップアップウィンドウ(子ページ)が閉じると、そのポップアップウィンドウのデータグリッドから選択を取得し、それに応じて親ページを更新する必要があります。

c。

protected void Page_Load(object sender, EventArgs e) 
{ 
    ClientScript.RegisterClientScriptInclude(this.GetType(), "manualequipentryscript", "javascript.js"); 
    lnkSearchProducts.Attributes.Add("onclick", "LaunchProductSearch();"); 
} 

作業..isn't ..

どのように私はこれを実装します:私は、私はこのようにロードしていますjavascript.jsをファイルに開いているウィンドウのjavascriptのコードを持っていますか?

(私は過去2時間のWWWを検索し、私を助ける具体的な何かを得ることができていないことにより、非常に多くの結果を思い付いた。)

よろしく、 ボブ

+1

おそらく、コードが「機能していない」理由を明確にする必要があります。どのようなエラーが出ますか? – Cerebrus

+0

「働いていない」とはどういう意味ですか?エラーが発生しますか?その場合は、ページが読み込まれたとき、またはボタンがクリックされたときですか?クライアントに送信されているマークアップを提供してください。 –

答えて

1

まず最初に理解しなければならないのは、ブラウザは一般的に真のモーダルポップアップウィンドウ(IEの例外を除いて)を許可しないということです。 Mozillaベースのブラウザでは、ウィンドウが前面にとどまるように指定できますが、それはモーダルと見なすことはできません。 This articleは、この現実を拡大します。

一般的な回避策は、別のウィンドウの代わりにDIVにモーダルダイアログを表示することです。

第2に、ポップアップウィンドウから親ウィンドウに値を渡すには、Javascriptメソッドまたはサーバーサイドコードを使用できます。前者の方法では、最初に親ウィンドウにアクセスし(window.openerプロパティを使用)、親ウィンドウ内の要素への参照を取得します。例については、this articleを参照してください。

サーバー側の方法では、状態値を保持してから、強制的に親ウィンドウのJavaScriptリフレッシュ(window.opener.location.reload();を使用)を実行して、それらの値をロードする必要があります。

最後に、あなたが提示したコードは私にとって正しいものです。あなたが得るエラーメッセージを教えてください。それはヒントを提供するかもしれません。

関連する問題