2009-07-03 8 views
0

「これは何をするの?実際に質問よりも...ここにあります:ロードされた子ページを使用して親ページ内のアイテムを更新できません

私は、ユーザーが選択したサービスを実行できるページがあります。これらのサービスのそれぞれは完全な.aspxページです(たくさんあります)。

alt text http://geocities.com/gth_sal/question.png

パネルA:

ページはあなたが写真で見ることができるように、3つのセクションに分かれて一覧表示し、選択したサービス(項目1,2、3)データソースとのGridViewでと更新パネル内にあります。私が何をしたいのかそれは私がjQueryの.LOADと.aspxのサービスページを(ロードdivのだ パネルB)機能 (各分離の.aspxサービスファイルは、サービスを実行するためのボタンがあります)

は、アイテムをリロードすることですPanelAとPanelCでサービスが実行されると(項目1のように)実行されたことを確認すると実行されますが、ExecuteButtonはセカンダリページにあるため、親ページで更新するイベントは使用できません。

これを行う方法?あるいはこれとはまったく別の解決策かもしれませんか? jqueryを使用していない可能性があります。

答えて

0

私はあなたの状況に合わせてテストケースを設定していませんでしたが、これを試してみてください。 最初に、ページ全体(パネルa、b、cを含む)をindex.aspxとします。その後することができますセットアップパネルAとを更新するためのコールバック関数C.例えば

UpdateCallBack = function(updateParameters){}; 

さて、私はあなたがserviceItem1.aspxがロード完了すると場合は、パネルを更新しようとしている時にわからないとアップデートパネルには、AJAX success eventにバインドすることができます。しかし、ユーザがPanel Bで何かをしてPanel A、Cを更新する必要がある場合は、前に設定したUpdateCallBack関数をindex.aspxで呼び出すことができます。 Panel Bの内容からその関数を呼び出すことは大丈夫だと思います。

1

Xandyの答えに加えて、クライアント側から親ウィンドウにアクセスできます。 window.parent。

したがって、基本的にwindow.parent.jQuery( "。MySelectorToRefresh")を実行できます。load( "myURL");

HTH

+0

hmmm更新する必要がある部分は、特定のURLとは関係ありません。ページ全体の一部です。 –