如果选择了特定的单选按钮,我需要在后台代码中打开一个新窗口。有没有办法做到这一点?谢谢。
我认为这应该能够正常工作;-)
在你提交之前,向单选按钮添加一些JavaScript代码以打开一个新的空白窗口。这样做可以避免弹出窗口被阻止,因为它是响应用户单击而打开的。有关如何执行此部分,请参见此链接。
然后,允许正常进行提交,在页面加载时注册一个启动脚本,告诉您已经存在的窗口转到一个新的URL。
String script = "window.open('popupPage.aspx', 'myPopup')";
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "someId", script, true);
window.open(url, 'myPopup')
如果已经存在一个具有该名称的窗口,则会返回该窗口,而不是创建一个新窗口... 因此您的弹出窗口不会被阻止!
RegisterStartupScript的简单示例:
RegisterStartupScript("id1", "<script type=\"text/javascript\">alert(\"I'm from JavaScript.\");</script>");