0

私には厄介な仕事があります。外枠内にページが含まれています。外枠には、含まれているページ内からいくつかのデータを入力する必要があるユーザーコントロールがあります。問題は、必要なデータを取得する前に外枠がレンダリングされることです。どうすればこれを達成できますか?

4

2 に答える 2

0

ユーザーコントロールにパブリックPopulateサブを作成し、必要なデータが読み込まれたときに外部フレームから呼び出すことはできませんか?Populateデータを引数として取り、コントロールにこのデータを入力します。

于 2010-01-21T20:02:41.650 に答える
0

これを実現するためにJavaScriptを使用します。必要な署名を使用して、親ページのJavaScriptにPopulateメソッドを配置できます。

function PopulateControls(param1, param2, param3) 
{
    document.getElementById('<%=this.Control1.ClientID%>');.value = param1;
    document.getElementById('<%=this.Control2.ClientID%>');.value = param2;
    document.getElementById('<%=this.Control3.ClientID%>');.value = param3;
}

次に、子フレームで、ページにJavaScriptが組み込まれていることを確認して、ページを元に戻します。

window.onload=SendToParent;

function SendToParent() 
{
   window.opener.PopulateControls('<%=this.Field1.ClientID%>','<%=this.Field2.ClientID%>',<%=this.Field3.ClientID%>');

}

上記のコードを微調整する必要があるかもしれませんが、要点は、親ページのコントロールは、子ページが完全に読み込まれるまで待機してから完了するということです。ラベルなどを使用する場合は、代わりにdivのInnerHTMLプロパティを使用できます。

于 2010-01-24T17:40:10.300 に答える