子ウィンドウから親ウィンドウへの値代入
こんにちは。
asp.net2.0を使い始めて間もないのですが、子ウィンドウから親ウィンドウへの値代入で困ってます。
親ウィンドウからボタンで子ウィンドウを表示し、子ウィンドウのGridViewで選択した値を親ウィンドウの
テキストボックス(サーバーコントロール)に代入したいのですが、
['window.opener.form1.TextBox1' は Null またはオブジェクトではありません。]
というエラーが出てしまいます。
ネットで見つけたサンプルは、親、子ともにウェブフォームを使用しており、確かにうまくいくのですが、
私が作っているページはマスターページの中のコンテンツフォームを親としていて、うまくいきません。
※但し、親側のコントロールをHTMLクライアントコントロールのINPUTタグにし、
さらにフォーム名をaspnetForm(ブラウザのソース表示でみたらそうなってました。自動生成?)
にして
↓子ウィンドウのグリッド選択時ソース
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
string strScript;
strScript = "<script language='javascript'>";
strScript += "window.opener.form1.TextBox1.value='aaaa';";
strScript += "window.close();";
strScript += "</script>";
Response.Write(strScript);
}
リテラルコントロールにしたり、TextBox1.valueではなくTextBox1.textにしてみたりと
いろんなパターンを試しましたが、だめでした。
コンテンツフォームでは親のサーバーコントロールへの値代入は不可能なのでしょうか?
そもそも、子ウィンドウでの検索というのはASP.NETでは、あまり一般的ではないのでしょうか?
宜しくお願いいたします。
(情報、不足してましたら教えてください。)
お礼
検索するキーワードも、分からなかったので。 参考になりました。ありがとうございました。