【问题标题】:Gridview popup window not opening from RowCommand event corresponding to Linkbutton clickGridview 弹出窗口未从对应于 Linkbutton 单击的 RowCommand 事件打开
【发布时间】:2015-09-30 17:56:10
【问题描述】:

我在 Gridview TemplateField 中有链接按钮。 我想在 RowCommand 事件的弹出式自定义大小窗口中重定向到另一个页面。

注意:这里我不想调用LinkBut​​ton的OnClientScript属性来打开Javascript Popup Custom Size Window。我想将 Gridrow 保存到 Session 对象中,并仅从服务器端代码打开窗口。

代码如下:

<ItemTemplate>
    <itemstyle width="5%" />
    <asp:LinkButton CssClass="l_link" ID="lnkView" runat="server"  
      DataTextField="overWriteType" 
      CommandName="overWriteType"
      CommandArgument='<%# Eval("overWriteType") %>'
      Text='<%# Eval("overWriteType") %>'></asp:LinkButton>
</ItemTemplate>
protected void gvKeys_RowCommand(object sender, GridViewCommandEventArgs e)
{
    if (e.CommandName == "overWriteType")
    {
        System.Text.StringBuilder sb = new System.Text.StringBuilder();
        sb.Append("&lt;script language='javascript'>");
        sb.Append("window.open('OverwriteConfiguration.aspx', 'PopUp',");
        sb.Append("'top=0, left=0, width=500, height=500, menubar=no,toolbar=no,status,resizable=yes,addressbar=no');<");
        sb.Append("/script>");
        ScriptManager.RegisterStartupScript(Page, GetType(), "OpenWindow", sb.ToString(), true);
    }
}

以上代码没有打开任何窗口。

【问题讨论】:

  • 不是ajax调用吗?

标签: c# asp.net gridview datagridview rowcommand


【解决方案1】:

在这种情况下,您不想使用 RegisterStartupScript,您想为您的按钮添加一个 onclick 处理程序,并且您想在 RowDataBound 中执行此操作:

protected void gvKeys_RowDataBound(object sender, GridViewRowEventArgs e)
{

  if (e.Row.RowType == DataControlRowType.DataRow)
  {

    System.Text.StringBuilder sb = new System.Text.StringBuilder();
    sb.Append("window.open('OverwriteConfiguration.aspx', 'PopUp',");
    sb.Append("'top=0, left=0, width=500, height=500, menubar=no,toolbar=no,status,resizable=yes,addressbar=no');<");

    LinkButton l = (LinkButton)e.Row.FindControl("lnkView");

    l.Attributes.Add("onclick", sb.ToString());

   }

}

【讨论】:

  • 你的意思是在 RowDataBound 事件中?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-21
  • 2021-07-22
  • 2020-06-03
  • 2018-02-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多