【问题标题】:retrieve data from to textbox according to dropdownlist selection根据下拉列表选择从文本框中检索数据
【发布时间】:2017-04-07 22:54:36
【问题描述】:

这是我的代码,但是当我将 dropdownlist.selectedvalue 替换为 real ID 它工作得很好,所以当我从下拉列表中选择另一个 id 时我需要这个更改:

protected void Page_Load(object sender, EventArgs e)
{

    SqlCommand com = new SqlCommand("select * from UsersTable where UserName='" + DropDownListUsers.SelectedValue + "'", conn);
    try
    {
        conn.Open();

        using (SqlDataReader red = com.ExecuteReader())
        {
            while (red.Read())
            {
                TextBoxpass.Text = (red["password"].ToString());
                TextBoxFname.Text = (red["Fname"].ToString());
                TextBoxLname.Text = (red["Lname"].ToString());
                TextBoxAddress.Text = (red["Address"].ToString());
                TextBoxPhone.Text = (red["PhoneNo"].ToString());
                TextBoxEmail.Text = (red["Email"].ToString());
                TextBoxpass.Text = (red["password"].ToString());
            }
        }
    }

    finally
    {
        conn.Close();
    }
}

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    只需添加 .ToString();

    DropDownListUsers.SelectedValue.ToString(); 
    

    当然,就像@Hung 所说,如果你想把它放在页面加载中,一定要放

    DropDownListUsers.SelectedIndex = 0;
    

    或上述代码之前的任何默认值

    【讨论】:

      【解决方案2】:

      为了使您的代码更好,您需要在此处做几件事。

      您需要将上述代码绑定到您的 changed 事件 DropDownListUsers 不是页面加载,或者如果您确实想将其放入页面加载中,您需要指定下拉菜单的默认选定值。

      //server side code
      protected void DropDownListUsers_SelectedIndexChanged(object sender, EventArgs e)
      {
           //code here
      }
      //Your markup
      OnSelectedIndexChanged="ddlCompany_SelectedIndexChanged" AutoPostBack="True"
      

      使用参数化查询https://msdn.microsoft.com/en-us/library/bb738521(v=vs.100).aspx

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-04-14
        • 1970-01-01
        • 1970-01-01
        • 2014-05-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多