Web表单没有更新值

本文关键字:更新 表单 Web | 更新日期: 2023-09-27 18:06:13

我试图保存检索和更新数据表从一个单一的web表单。正确地保存和检索数据,但不更新数据。

代码

using System;
using System.Web.UI;
using System.Data;
public partial class Basic_Information : System.Web.UI.Page
{
    DataTable user_dt, personal_dt = new DataTable();
    string u_id;
    Boolean check = false;
    protected void Page_Load(object sender, EventArgs e)
    {       
        if(!IsPostBack)
            if (Session["user"] != null)
                 load();
    }
    protected void btn_save_Click(object sender, EventArgs e)
    {
        if(check == false)
            savedata();
        else
            editdata();
    }
    protected void load()
    {
        user_dt = (DataTable)Session["user"];
        u_id = user_dt.Rows[0][0].ToString();
        personal_dt = (DataTable)Session["personal"];
        if (personal_dt.Rows.Count != 0)
        {
            retrivedata();
            check = true;
        }
    }
    protected void savedata()
    {
            personal_dt.Columns.Add("User_id");
            personal_dt.Columns.Add("Name");
            personal_dt.Columns.Add("Father_Name");
            personal_dt.Columns.Add("CNIC");
            personal_dt.Columns.Add("Date_of_Birth");
            personal_dt.Columns.Add("Domicile");
            personal_dt.Columns.Add("Gender");
            personal_dt.Columns.Add("Religion");
            personal_dt.Columns.Add("Nationality");
            personal_dt.Columns.Add("Marital");
            DataRow per_row = personal_dt.NewRow();
            per_row["User_id"] = u_id;
            per_row["Name"] = txt_name.Text;
            per_row["Father_Name"] = txt_fname.Text;
            per_row["CNIC"] = txt_cnic.Text;
            per_row["Date_of_Birth"] = txt_dofb.Text; 
            per_row["Domicile"] = ddl_domicil.SelectedItem.Text;
            per_row["Gender"] = ddl_gender.SelectedItem.Text; 
            per_row["Religion"] = ddl_religion.SelectedItem.Text;
            per_row["Nationality"] = txt_nationality.Text;
            per_row["Marital"] = ddl_marital.SelectedItem.Text;
            personal_dt.Rows.Add(per_row);
            string script = "alert('Profile Successfully Saved');";
                ClientScript.RegisterStartupScript(this.GetType(), "saved", script, true);
            }
        }
    protected void retrivedata()
    {
            txt_name.Text = personal_dt.Rows[0]["Name"].ToString();
            txt_fname.Text = personal_dt.Rows[0]["Father_Name"].ToString();
            txt_cnic.Text = personal_dt.Rows[0]["CNIC"].ToString();
            txt_dofb.Text = personal_dt.Rows[0]["Date_of_Birth"].ToString(); 
            ddl_domicil.Items.FindByText(personal_dt.Rows[0] ["Domicile"].ToString()).Selected = true;
            ddl_gender.Items.FindByText(personal_dt.Rows[0]["Gender"].ToString()).Selected = true;
            ddl_religion.Items.FindByText(personal_dt.Rows[0]["Religion"].ToString()).Selected = true;
            txt_nationality.Text = personal_dt.Rows[0]["Nationality"].ToString();
            ddl_marital.Items.FindByText(personal_dt.Rows[0]["Marital"].ToString()).Selected = true;
    }
    protected void editdata()
    {
        personal_dt.Rows[0]["Name"] = txt_name.Text;
        personal_dt.Rows[0]["Father_Name"] = txt_fname.Text;
        personal_dt.Rows[0]["CNIC"] = txt_cnic.Text;
        personal_dt.Rows[0]["Date_of_Birth"] = txt_dofb.Text;
        personal_dt.Rows[0]["Domicile"] = ddl_domicil.SelectedItem.Text;
        personal_dt.Rows[0]["Gender"] = ddl_gender.SelectedItem.Text;
        personal_dt.Rows[0]["Religion"] = ddl_religion.SelectedItem.Text;
        personal_dt.Rows[0]["Nationality"] = txt_nationality.Text;
        personal_dt.Rows[0]["Marital"] = ddl_marital.SelectedItem.Text;
    }
}

正确保存数据,正确检索数据。

但是编辑数据的错误返回第一个检索到的值。

下拉菜单不能选择多个项目

Web表单没有更新值

关于下拉绑定问题,在Dropdown.DataSource = YourDataSource添加Dropdown.ClearSelection();

试试这个。在向datatable中填充数据后,您需要传递该datatable,并更新记录。

 protected void editdata()
    {
        DataRow dr = personal_dt.NewRow();
        personal_dt.Rows.Add(dr);
        dr["Name"] = txt_name.Text;
        dr["Father_Name"] = txt_fname.Text;
        dr["CNIC"] = txt_cnic.Text;
        dr["Date_of_Birth"] = txt_dofb.Text;
        dr["Domicile"] = ddl_domicil.SelectedItem.Text;
        dr["Gender"] = ddl_gender.SelectedItem.Text;
        dr["Religion"] = ddl_religion.SelectedItem.Text;
        dr["Nationality"] = txt_nationality.Text;
        dr["Marital"] = ddl_marital.SelectedItem.Text;
   }