通过javascript将值从父窗体传递到.NET控件。来自window.opener的Gridview Selectparameter

时间:2011-08-19 17:33:16

标签: javascript asp.net gridview parameters parent-child

我有两个asp.net表单。

第一个表单使用onclick javascript打开第二个弹出窗口,如下所示:

onclientclick="javascript:PS=window.open('https://site/PS.aspx','PS','width=800,height=600,scrollbars=1');PS.focus()"

第二个表单有一个带有SelectParameter的.net gridview。

 <SelectParameters>
 <asp:ControlParameter ControlID="???" Name="FirstName" DefaultValue="="  PropertyName="Text" Type="String" />
 </SelectParameters>
 </asp:SqlDataSource>

如何将参数的值设置为父窗体上的控件值?如果可能,我不想使用会话变量或查询字符串。

感谢。

1 个答案:

答案 0 :(得分:0)

您应该可以从父窗口中提取值,如下所示:

在父窗体上,添加一个隐藏字段并创建一个这样的函数来访问它的值:

getParameterValue = function(){
    return document.getElementById("<%=HiddenCtrl.UniqueID%>").value;    
}

在子窗口中添加隐藏字段,并设置如下值:

document.getElementById("<%=ChildHiddenCtrl.UniqueID%>").value = window.opener.getParameterValue();

然后对于您的控制参数,使用ChildHiddenCtrl:

<asp:ControlParameter ControlID="ChildHiddenCtrl" ... >