【问题标题】:pop up panel from codebehind on button click event在按钮单击事件上从代码隐藏弹出面板
【发布时间】:2012-03-19 21:42:15
【问题描述】:

我有一个动态生成按钮的 asp.net Web 应用程序,我想在该按钮单击事件上打开弹出页面或面板。

我尝试了以下代码,但它不起作用:

protected void Test_Click(object sender, EventArgs e){

   OpenNewWindow("test.aspx");
}

public void OpenNewWindow(string url)

{
 ClientScript.RegisterStartupScript(this.GetType(), "newWindow", String.Format("<script>window.open('{0}');</script>", url));

}

【问题讨论】:

  • 它应该可以工作。可能是您的页面中有 javascript 错误并且脚本没有被执行,因为执行正在其他地方终止。此外,请检查您的弹出窗口拦截器是否未拦截该网站。
  • TBH :既然可以使用 Javascript 完成相同的交互,为什么还要向服务器执行回发?其次(这是未经测试的),但“RegisterStartupScript”是否适用于回发?

标签: c# asp.net dynamic popup code-behind


【解决方案1】:

试试这个:

为动态创建的按钮添加属性

Button1.Attributes.Add( "onclick", "javascript:window.open('http://www.google.com');" ); 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-12
    • 1970-01-01
    • 2012-05-01
    • 2019-02-07
    相关资源
    最近更新 更多