传统的模式窗口中是使用向隐藏框架页提交,来避免submit以后弹出一个新窗口

本文介绍如何在ASP.NET中防止PostBack操作打开新窗口,提供了两种有效方法:使用iframe包裹目标页面及在<head>中添加BASE标签指向_self。

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

传统的模式窗口中是使用向隐藏框架页提交,来避免submit以后弹出一个新窗口,(比如ASP时代),不过由于现在的Asp.net多数情况下都是自身PostBack,因此原来的方法变得不太行得通,为了PostBack不产生新窗口,可以使用如下办法:
 
<iframe src="targetDialog.aspx" width="100%" height="100%">
 
这样在targetDialog.aspx中产生的任何PostBack都不会弹出新窗口.
 
另外传回值的情况,一般为了方便argument应该传递window对象,所以如果要在targetDialog.aspx中传值回parent主窗口的话,上述情况只是多了一层,通过 parent.window.dialogArguments.document.getElementById("xxx"),就可以访问/设置主窗口中的这些控件状态值.
 
另一个更加简单的方法,在头中新增一行:
 
<BASE target=_self>
即可
我发现了这个问题,搜到了如上所述这个问题的解决方法,但我没有测试,JWT使用第二种办法,果然搞定。考,我为什么不自己试一下呢?
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值