0

'正在处理 asp.net 任务,我必须向用户显示配置文件信息,并且如果用户想要编辑它,还必须对其进行编辑。

现在,我的问题是:

我能够向用户显示配置文件信息,但是在编辑它时(我使用相同的文本框来编辑配置文件信息)'在同一个文本框中获取文本的先前值,即来自我的数据库。即使我已将其替换为新文本,文本框中的文本也不会被替换。

在下面的代码中txtEditName,它从数据库中获取它的值。我想在点击事件时进行编辑,btnSaveChanges但是当我调试代码时,我开始知道来自数据库的值仍然存在。

我的测试箱是:

<asp:TextBox ID="txtEditName" runat="server" Width="200px" Height="25px" Enabled="false"></asp:TextBox>

我的 aspx.cs 代码是:

BALSuperAdminProfile objSuperAdminProfile = new BALSuperAdminProfile();
DataTable dt;
int sa_id = 1;

void showSuperAdminInfo()
     {
          try
           {
               dt = objSuperAdminProfile.getSuperAdminProfileDetails(sa_id);

               txtEditName.Text = dt.Rows[0][2].ToString();
           }
         catch (Exception Ex)
                {
                    lblResult.Text = "Could Not load Database. Please try Again latter.";
                }
            }

            protected void Page_Load(object sender, EventArgs e)
            {
                showSuperAdminInfo();
            }

            protected void btnSaveChanges_Click(object sender, EventArgs e)
            {
                string name=txtEditName.Text;
                try
                {
    dt = objSuperAdminProfile.editSuperAdminProfile(sa_id, name,);
                    lblResult.Text = dt.Rows[0][0].ToString();
                    showSuperAdminInfo();
                }
                catch (Exception Ex)
                {
                    lblResult.Text = Ex.Message;
                }

            }

            protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
            {
                txtEditName.Enabled = true;       
            }
        }

可能是什么问题呢?

请帮忙。

4

2 回答 2

0

将您的检索代码写在

If(!isPostBack)
{
}

在页面加载时使该文本框属性 ReadOnly:True

当您单击编辑按钮时,将 Readonly 设置为 false 并编写更新代码

于 2013-03-14T06:04:11.770 回答
0

在文本框中显示名称时,您正在使用 showSuperAdminInfo() 中的 row[0][0] 元素

txtEditName.Text = dt.Rows[0][2].ToString();

在标签中显示结果时,您在 btnSaveChanges_Click() 中使用了不同的索引

lblResult.Text = dt.Rows[0][0].ToString();

要检查的另一件事是您的业务层中的函数 editSuperAdminProfile() 。

于 2013-03-14T06:32:33.253 回答