我有两个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>
如何将参数的值设置为父窗体上的控件值?如果可能,我不想使用会话变量或查询字符串。
感谢。
答案 0 :(得分:0)
您应该可以从父窗口中提取值,如下所示:
在父窗体上,添加一个隐藏字段并创建一个这样的函数来访问它的值:
getParameterValue = function(){
return document.getElementById("<%=HiddenCtrl.UniqueID%>").value;
}
在子窗口中添加隐藏字段,并设置如下值:
document.getElementById("<%=ChildHiddenCtrl.UniqueID%>").value = window.opener.getParameterValue();
然后对于您的控制参数,使用ChildHiddenCtrl:
<asp:ControlParameter ControlID="ChildHiddenCtrl" ... >