2013-07-03 34 views
1

我有一个.aspx页面中有一个iframe:从父代码隐藏的iframe访问.NET控件

<iframe src="SearchAdv.aspx" id="advSearch" runat="server" frameborder="0" scrolling="no" width="100%" height="500px;" ></iframe> 

而iframe指向具有几个控件的aspx页面我需要访问,例如:

<asp:dropdownlist id=ddColumn1 runat="server" AutoPostBack="True" Width="270px" onselectedindexchanged="ddColumn1_SelectedIndexChanged"></asp:dropdownlist> 

我需要从父代码隐藏中获取iFrame中的下拉列表的值。我试过以下,但得到空引用错误:

DropDownList DDCol1 = (DropDownList)advSearch.FindControl("ddColumn1"); 

有什么建议吗?提前致谢。

+0

这是不可能的。你想达到什么目的? –

+0

它更好地使用用户控制伙伴 – Manish

回答

0

我想你将不得不调用一些JavaScript并传回给父母,因为任何尝试从父母代码隐藏中读取值都不会给你任何东西,你将阅读一个新实例化版本的值您的网页,而不是一个多数民众赞成显示...

因此,在工作流方面..

1)您的iFrame的下拉被选中(从这个名单中删除自动回)

2 )这会在该iframe页面中调用一个javascript函数。

3)的iFrame网页JavaScript可以调用父窗口 - 像parent.window.functionName(yourListValue);

4)你的父框架中应包含functionName(val)将接收来自的iFrame窗口呼叫。

5)你的父母functionName(val)现在可以将数据传递给自身,无论是阿贾克斯的方式或者是先填充在价值传递,然后触发您的<asp:button控件之一的<asp:hidden场,那么你就可以赶上的价值您的父页面的代码隐藏。

听起来很啰嗦,虽然它的'一旦你走了很简单。

相关问题