IFRAME弹出式窗口回发数据到父页面[调用父页JS方法并模拟调用按钮的回发事件]

本文介绍了一种实现iframe嵌入式窗口与父级页面之间的数据交互方法。通过定义特定JavaScript函数,使得子页面能够将选定的数据发送回主页面,并触发相应事件进行处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转自http://www.cnblogs.com/shawker/archive/2011/01/13/1934510.html

 

现在有父级页面A。当点击按钮时弹出iframe嵌入式窗口(页面B),如下图:

我们要实现的功能,就是当点击确认的时候,把弹出窗B页面选中的信息传回主页面A,并对信息进行处理。

 

首先,在A页面中定义如下用于回发的函数:

<script type="text/javascript">

        function ReBind(id) {

            __doPostBack('ctl00$PageBody$LinkButton1', id); //模拟调用按钮的回发事件并传入值,此处要获取按钮的客户端ID

            tb_remove();    //关闭弹出窗口的方法

        }

</script>

<asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click"></asp:LinkButton>

A页面后台,按钮回发的事件:

 

  int cdID = int.Parse(Request.Form["__EVENTARGUMENT"].ToString());//题目ID,此处为前台回发传递的参数

  /*处理方法*/

}

 

B页面点击确定按钮时出发的事件:

 

  string id = HFEPID.Value;//获取选中的ID

  string str = "window.parent.ReBindPaper('" + id + "');";//调用父页面绑定方法

  ScriptManager.RegisterStartupScript(this.Page, Type.GetType("System.String"), str, str, true);

 

}

 

另外,还可以利用AjaxPro控件从客户端调用服务端的函数,详情参见:

http://www.cnblogs.com/shawker/archive/2011/01/13/1934560.html

//确定按钮

protected void Button1_Click(object sender, EventArgs e)

{

//绑定题目名称

protected void LinkButton1_Click(object sender, EventArgs e)

{

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值