ASP.NET实现省市县三级联动
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GetProvince();
}
}
private void LoadData(string id, DropDownList ddl)
{
string strcon = @"Data Source=;Initial Catalog=;Persist Security Info=True;User ID=sa;Password=";
SqlConnection conn = new SqlConnection(strcon);
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "SELECT A_Id,A_Name FROM T_Arear WHERE A_ParentId=@parentid ORDER BY A_Id";
cmd.Parameters.AddWithValue("@parentid", id);
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
adapter.Fill(dt);
cmd.Dispose();
conn.Dispose();
ddl.DataSource = dt;
//指定下拉列表要显示的字段的值
ddl.DataTextField = "A_Name";
//指定下拉列表的value属性要绑定的字段的值
ddl.DataValueField = "A_Id";
ddl.DataBind();
//插入默认选中项
if (id == "0")
{
ListItem item = new ListItem("---请选择---", "0");
//this.ddlProvince.Items.Add(item);
ddl.Items.Insert(0, item);
}
}
private void GetProvince()
{
LoadData("0", this.ddlProvince);
}
private int Sum(int x, int y)
{
int num = x + y;
return num;
}
protected void ddlProvince_SelectedIndexChanged(object sender, EventArgs e)
{
string id = this.ddlProvince.SelectedItem.Value;
if (id != "0")
{
LoadData(id, this.ddlCity);
string selectid = this.ddlCity.SelectedItem.Value;
LoadData(selectid, this.ddlArear);
}
else
{
ddlCity.Items.Clear();
ddlArear.Items.Clear();
}
}
protected void ddlCity_SelectedIndexChanged(object sender, EventArgs e)
{
string id = this.ddlCity.SelectedItem.Value;
LoadData(id, this.ddlArear);
}
}