以编程方式从iframe回发到父页面

Mur*_*rre 3 .net vb.net asp.net

我有一个aspx页面,在那个页面我有一个iframe.在iframe中,我在代码中做了一些事情,当它完成时,我想从aspx做回发.

换句话说,是否可以以编程方式从iframe后面的代码到父页面进行回发?

我想回发可以用"ClientScript.GetPostBackClientHyperlink(新的控制()的String.Empty)",但只会做对的iframe我想回发来完成.

bec*_*hbd 6

我以两种不同的方式做到了这一点:

1)在父页面上有一个隐藏按钮.当你需要它回发时,你注册了一些导致点击该按钮的javascript:

父HTML:

<asp:Button ID="Button1" runat="server" Text="" Style="background-color: Transparent;
                                color: inherit; border-style: none;" />
Run Code Online (Sandbox Code Playgroud)

iframe Code Behind:

ClientScript.RegisterStartupScript(Me.GetType(), "RefreshParent", "<script type='text/javascript'>var btn = window.parent.document.getElementById('Button1');if (btn) btn.click();</script>")
Run Code Online (Sandbox Code Playgroud)

2)从代码后面注册一个客户端脚本,该脚本在父页面的表单上调用回发.JS将是这样的:

window.parent.document.forms[0].submit();
Run Code Online (Sandbox Code Playgroud)