繁体   English   中英

如何将数据绑定到asp.net中另一个dropdownlist的选定值上的dropdownlist? 我已经将数据绑定到所有下拉列表

[英]how to bind data to the dropdownlist on selected value of the other dropdownlist in asp.net?? I have already bind data to the all the dropdown

//.aspx.cs代码:

protected void ddldistrict_SelectedIndexChanged(object sender, EventArgs e)
{
    try {
        ddltaluka.Enabled = true;
        string d1 = ddldistrict.Text;
        NpgsqlConnection conn = new NpgsqlConnection("Server=localhost;Port=5432;User Id=postgres;Password=*******;Database=guj_data;");
        conn.Open();
        string sql = "SELECT tname FROM taluka_geo_bnd_box WHERE district='"+d1+"'";
        NpgsqlDataAdapter da = new NpgsqlDataAdapter(sql, conn);

        ds.Reset();
        da.Fill(ds);
        dt = ds.Tables[0];
        ddltaluka.DataSource = ds;
        ddltaluka.DataTextField = "tname";
        ddltaluka.DataBind();

        conn.Close();
      }
    catch(Exception e3)
    {
        throw e3;
    }
}
protected void ddltaluka_SelectedIndexChanged(object sender, EventArgs e)
{
    try { 
    ddlvillage.Enabled = true;
    string t1 = ddltaluka.Text;
    string d1 = ddldistrict.Text;
    NpgsqlConnection conn = new NpgsqlConnection("Server=localhost;Port=5432;User Id=postgres;Password=*****;Database=guj_data;");
    conn.Open();
    string sql = "SELECT vname FROM village_boundary_geo_bnd_box WHERE tname='"+t1+"' AND district='"+d1+"'";
    NpgsqlDataAdapter da = new NpgsqlDataAdapter(sql, conn);

    ds.Reset();
    da.Fill(ds);
    dt = ds.Tables[0];
    ddlvillage.DataSource = ds;
    ddlvillage.DataTextField = "vname";
    ddlvillage.DataBind();

    conn.Close();
  }
    catch(Exception e4)
    {
        throw e4;
    }
}

如果我正确理解你的话; 当调用方法ddltaluka_selectedIndexChanged时,ddlvillage数据绑定发生在页面加载时,您尝试绑定新数据吗,但是它又回到了原始的ddlVillage列表?

如果是这种情况,您只需要在初始页面加载时对ddlVillage进行初始数据绑定,而不必每次回发

  if (!IsPostBack)
  {
       //bind your initial data here

  }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM