【发布时间】:2017-07-25 19:41:39
【问题描述】:
我有一个带有 3 个字段和一个按钮“更新”的网格视图的 aspx 页面。当我单击“更新”按钮时,我将被重定向到另一个 aspx 页面,该页面具有一个表单,其中包含有关通过单击“更新”按钮选择的网格视图中的条目的更多信息。该表单包含更多字段和一个“删除”按钮。当我单击“删除”按钮时,我需要关闭打开的表单并返回到 gridview 并删除该条目。我正在将 TemplateField 用于我的网格视图。
<asp:GridView ID="GridView1" runat="server">
<Columns>
<asp:TemplateField ShowHeader="False" HeaderText=" ">
<ItemTemplate>
<asp:Button ID="Btn_Update" Text="Update" runat="server" ButtonType="Button" CommandName="update" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="ID" HeaderText="ID" />
<asp:BoundField DataField="FirstName" HeaderText="First Name" />
<asp:BoundField DataField="LastName" HeaderText="Last Name" />
</Columns>
</asp:GridView>
这是我单击表单中的“删除”按钮关闭它并返回到gridview后的代码:
protected void btn_Delete_Click(object sender, EventArgs e)
{
#region Redirect to Page
Page.ClientScript.RegisterStartupScript(this.GetType(), "RefreshParent", "<script language='javascript'>RefreshParent()</script>");
Response.Write("<script>window.close();</" + "script>");
#endregion
ClearData();
}
单击表单中的“删除”按钮后,如何从网格视图中删除该行?谢谢大家
【问题讨论】:
-
当您打开辅助窗口时,您知道您选择的行号吗?因此,当您关闭窗口时,您可以使用委托通知您的主窗口您单击了 DELETE 按钮,从而删除了该特定行。
-
不,我没有实现该功能。我是否应该添加一些代码来获取行号并将其放入会话中,因为我将在不同的 aspx 页面中使用?
-
是的,应该可以。
-
好的。我会试试的。谢谢
-
您可以在选择时获取行 ID,并将其作为查询字符串传递给详细信息页面。在关闭父窗口时,您将可以访问父窗口的 javascript 函数。这样您就可以从子窗口调用父窗口函数并关闭当前窗口。
标签: javascript c# asp.net webforms