0

如果有人在网格视图中选择“删除”链接,我会遇到“删除确认”弹出的问题。

更具体地说,单击“删除”链接时弹出窗口确实有效,但如果我单击同一单元格中旁边的“编辑”链接,然后单击“取消”按钮,弹出窗口也会出现提供“更新”和“取消”选项时的更新操作。

我相信这是因为我正在按索引访问删除控件,当我单击编辑按钮时,“编辑”链接的取消按钮会采用默认情况下“删除”按钮所在位置的索引。显然,不希望弹出“取消”操作。我正在为 gridview 使用内置的“允许编辑”和“允许删除”选项。下面是我正在使用的代码。

protected void actionPlanGirdView_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow) 
    {
        // reference the Delete LinkButton
        LinkButton db = (LinkButton)e.Row.Cells[0].Controls[2];

        db.OnClientClick = "return confirm('Are you certain you want to delete the record?');";

    }
}
4

2 回答 2

1

更新,我找到了解决方案。在您为 .NET gridview 使用自动生成的插入和删除按钮的情况下,并且您想以编程方式访问删除按钮,我使用下面的方法来访问TextLinkBut​​ton 的属性。内部if语句检查 LinkBut​​ton 是否是 Delete 链接,就好像您还使用自动生成的 Insert 链接一样,当您在 Gridview 中单击 Insert 时,该索引位置可以是 Update/Cancel 组合的 Cancel 按钮的位置.

protected void actionPlanGirdView_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        // reference the Delete LinkButton
        LinkButton db = (LinkButton)e.Row.Cells[0].Controls[2];

            if (db.Text == "Delete")
            {
                db.OnClientClick = "return confirm('Are you certain you want to delete the record?');";
            }
    }
}
于 2013-02-18T19:43:11.073 回答
0

尝试使用FindControl

LinkButton deleteButton = (LinkButton)e.Row.FindControl("deleteButton");

祝你好运。

于 2013-02-11T19:27:43.683 回答