asp.net DropDownList 三级联动下拉菜单实现代码
asp.net DropDownList 三级联动下拉菜单实现代码
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下:if(!IsPostBack){//一级分类列表this.DropDownList1.DataSource=dsbb.Se...

复制代码 代码如下:

if (!IsPostBack)

{

//一级分类列表

this.DropDownList1.DataSource = dsbb.SelectSubjct1();

this.DropDownList1.DataTextField = "cName";

this.DropDownList1.DataValueField = "Ccode";

this.DropDownList1.DataBind();

this.DropDownList1.Items.Insert(0,new ListItem("请选择一级分类","0"));

this.DropDownList8.Items.Insert(0, new ListItem("请选择二级分类", "0"));

this.DropDownList9.Items.Insert(0,new ListItem ("请选择三级分类","0"));

//二级分类列表

}

/// <summary>

/// 绑定二级分类

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)

{

libs.Database.Dbbase dbb = new libs.Database.Dbbase();

if (Convert.ToInt32(this.DropDownList1.SelectedValue) == 0) //清除列表内容

{

this.DropDownList8.Items.Clear();

this.DropDownList8.Items.Insert(0, new ListItem("请选择二级分类", "0"));

this.DropDownList9.Items.Clear();

this.DropDownList9.Items.Insert(0, new ListItem("请选择三级分类", "0"));

}

else //二级分类列表

{

this.DropDownList8.DataSource = dbb.Selectsubjct2(this.DropDownList1.SelectedValue.Substring(0,2));

this.DropDownList8.DataTextField = "cName";

this.DropDownList8.DataValueField = "Ccode";

this.DropDownList8.DataBind();

this.DropDownList8.Items.Insert(0,new ListItem ("请选择二级分类","0"));

this.DropDownList9.Items.Clear();//清除第三分类

this.DropDownList9.Items.Insert(0, new ListItem("请选择三级分类", "0"));

}

}

/// <summary>

/// 绑定三级分类

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

protected void DropDownList8_SelectedIndexChanged(object sender, EventArgs e)

{

libs.Database.Dbbase dbase = new libs.Database.Dbbase();

this.DropDownList9.DataSource = dbase.selectsubject3(this.DropDownList8.SelectedValue.Substring(0,4));

this.DropDownList9.DataTextField = "cName";

this.DropDownList9.DataValueField = "Ccode";

this.DropDownList9.DataBind();

this.DropDownList9.Items.Insert(0,new ListItem("请选择三级分类","0"));

}

Dbbase.cs页:

复制代码 代码如下:

/// <summary>

/// 查询一级栏目

/// </summary>

/// <returns></returns>

public DataSet SelectSubjct1()

{

string con = System.Configuration.ConfigurationSettings.AppSettings["sqlconn"];

SqlConnection conn = new SqlConnection(con);

string sqlstr = "SELECT kndid, Ccode, cName, cLevel FROM kind WHERE cLevel = 1";

DataSet dst = new DataSet();

SqlDataAdapter sda = new SqlDataAdapter(sqlstr,conn);

try

{

sda.Fill(dst);

return dst;

}

catch (Exception ex)

{

throw new Exception(ex.Message);

}

finally

{

conn.Close();

}

}

/// <summary>

/// 查询二级栏目内容

/// </summary>

/// <param name="ccode"></param>

/// <returns></returns>

public DataSet Selectsubjct2(string ccode)

{

string conn1 = System.Configuration.ConfigurationSettings.AppSettings["sqlconn"];

SqlConnection conn = new SqlConnection(conn1);

string sqqq = "select kndid,Ccode,cName,cLevel from kind where cLevel = 2 and Ccode like '" + ccode + "%'";

DataSet dss = new DataSet();

SqlDataAdapter sdd = new SqlDataAdapter(sqqq,conn);

try

{

sdd.Fill(dss);

return dss;

}

catch (Exception ex)

{

throw new Exception(ex.Message);

}

finally

{

conn.Close();

}

}

/// <summary>

/// 查询三级栏目内容

/// </summary>

/// <param name="cde"></param>

/// <returns></returns>

public DataSet selectsubject3(string cde)

{

string conn2 = System.Configuration.ConfigurationSettings.AppSettings["sqlconn"];

SqlConnection conn = new SqlConnection(conn2);

string sqq = "select kndid,Ccode,cName,cLevel from kind where cLevel = 3 and Ccode like '" + cde + "%'";

DataSet dst = new DataSet();

SqlDataAdapter sdaa = new SqlDataAdapter(sqq,conn);

try

{

sdaa.Fill(dst);

return dst;

}

catch (Exception ex)

{

throw new Exception(ex.Message);

}

finally

{

conn.Close();

}

}

注意:DropDownList1_SelectedIndexChanged 事件,AutoPostBack="True"

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新asp.net教程学习
热门asp.net教程学习
编程开发子分类