详细信息视图 ASP.Net 取消客户端的默认编辑模式

Detailsview in ASP.Net cancel default editMode on client side

本文关键字:默认 编辑 模式 客户端 取消 视图 ASP Net 详细信息      更新时间:2023-09-26

我有一个带有 SQL 数据源绑定的主网格和详细信息视图,默认情况下在加载期间设置为 EditMode。并且我允许用户在我的主网格中选择一行以在模式弹出窗口中加载详细信息视图(为详细信息视图提供数据键以加载选定的行数据(,并在成功输入和更新后将详细信息视图数据更新到数据库用户。当用户在详细信息视图中输入意外数据时,我尝试使用客户端 javascript 警报消息向用户显示相应的验证,并允许用户使用模式弹出窗口取消命令选项关闭模式弹出窗口。
注意:在这里我没有取消编辑模式(不知道如何在客户端执行此操作(

我面临的问题是,在详细信息视图中输入错误的数据后,用户可以选择关闭详细信息视图并重新打开相同的数据(通过选择先前在主网格中选择的同一行(。现在,以前的错误数据加载到详细信息(由用户输入(中,而不是来自数据库/SQL数据源的实际/正确数据。

我尝试将详细信息视图状态设置为"false",即使详细信息视图正在尝试加载数据,也会填充以前的错误值。有人可以帮助我解决这个问题。

我已经通过在主网格视图上调用详细信息视图的数据绑定操作解决了上述问题 - 在行选择命令
上注意:对于详细信息视图,视图状态设置为"false",以便我们始终将数据绑定到详细信息视图。在我的场景中,我没有受到任何额外的数据库调用,因为我的 SQLDataSource(绑定到 DetailsView(视图状态设置为 true

protected void MainGridView_RowCommand(object sender, GridViewCommandEventArgs e)
{
    if (e.CommandName == "select")
    {
        //Binds DetailsView with source data, not loading wrong data from edit mode if user selects previously selected same row again
        DetailsView.DataBind();
        this.mdlPopup.Show();
    }
}