0

私は2つのASPXページを持っています.1つは親で、もう1つは子です...親ASPXには、以下のコードを使用して新しいウィンドウで子ASPXを開くリンクがあります:

ポップアップ ASPX を開くために使用されるコード:

//JavaScript function:
function showPopup()
{
     var strReturn = window.open("TaxReportInputsForm.aspx",'popup','width=390,height=120');
}

ボタンコード:

Page.ClientScript.RegisterStartupScript(GetType(), "popup", "showPopup();", true);

現在、子フォームのコード ビハインドを使用して、セッション変数を使用して親フォームのコントロールの値を設定しています...ただし、問題は、親フォームのコントロールの値が更新されても (デバッグで確認)、更新されないことです。新しい値を「表示」します..

子フォームが値を変更した後、親フォームのコントロールに新しい値を表示させるにはどうすればよいですか?

2 つの要件:

  1. 子フォームがまだ開いている間に親フォームのコントロールの値を更新したいことに注意してください..つまり、この更新をトリガーするために、子フォームが閉じるのを待ちたくありません..
  2. また、すべてのコントロールの値がリセットされるため、親フォーム全体を更新したくありません..

私のフレームワークは .NET 2.0 です ...

4

1 に答える 1

0

問題は、親クライアント側コードとそのコード ビハインド コード間の通信がないことです。これが、html (クライアント) で値が更新されない理由です。現在、ソリューションはクライアント側コードとサーバー間の通信を行っています

1) タイマー設定による Jquery AJAX 呼び出し。タイマーは、子ポップアップを開いた後にのみ開始されます。サーバーからの値がクライアント側に送られ、jquery DOM の変更によって更新されるようになりました

2) ASP.NET の PageMethod も使用できます。

于 2013-06-26T11:33:26.580 に答える