省市县三级联动

省市县三级联动的实现
< xmlnamespace prefix ="o" ns ="urn:schemas-microsoft-com:office:office" />
前台页面
三个下拉列表控件
 
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="LiandongThree.aspx.cs" Inherits="Liandong_LiandongThree" %>
 
<!DOCTYPE html PUBLIC "-//W< xmlnamespace prefix ="st1" ns ="urn:schemas-microsoft-com:office:smarttags" />3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns=" http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>三级联动练习</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:DropDownList ID="ddlProvince" runat="server" AutoPostBack="true"
            onselectedindexchanged="ddlProvince_SelectedIndexChanged">
            <asp:ListItem Value="0">--省份--</asp:ListItem>
        </asp:DropDownList>
        <asp:DropDownList ID="ddlCity" runat="server" AutoPostBack="true"
            onselectedindexchanged="ddlCity_SelectedIndexChanged">
            <asp:ListItem Value="0">--城市--</asp:ListItem>
        </asp:DropDownList>
        <asp:DropDownList ID="ddlDistrict" runat="server" AutoPostBack="true"
            onselectedindexchanged="ddlDistrict_SelectedIndexChanged">
            <asp:ListItem Value="0">--县区--</asp:ListItem>
        </asp:DropDownList>
    </div>
    </form>
</body>
</html>
 
 
 
 
 
后台代码:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
 
public partial class Liandong_LiandongThree : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!this.Page.IsPostBack)
        {
            getddlProvinceDataBind();       //页面首次加载执行省份绑定
        }
    }
 
    public void getddlProvinceDataBind()       //省份数据绑定
    {
        string sqlProvince = "SELECT * FROM S_Province";
        ddlProvince.DataSource = getDataSet(sqlProvince);
        ddlProvince.DataTextField = "ProvinceName";
        ddlProvince.DataValueField = "ProvinceID";
        ddlProvince.DataBind();
 
        ddlProvince.Items.Insert(0, new ListItem("--省份--","0"));
    }
    protected void ddlProvince_SelectedIndexChanged(object sender, EventArgs e)       //第一层,省份选择事件
    {
        int ProvinceID = Convert.ToInt32(ddlProvince.SelectedValue);
        if (ProvinceID > 0)
        {
            string sqlCity = "SELECT * FROM S_City WHERE ProvinceID=" + ProvinceID + "";       //根据省份ID找城市
            ddlCity.DataSource = getDataSet(sqlCity);
            ddlCity.DataTextField = "CityName";
            ddlCity.DataValueField = "CityID";
            ddlCity.DataBind();
 
            ddlCity.Items.Insert(0, new ListItem("--请选择城市--", "0"));
        }
        else
        {
            ddlCity.Items.Clear();
            ddlCity.Items.Insert(0, new ListItem("--请选择城市--", "0"));
            ddlDistrict.Items.Clear();
            ddlDistrict.Items.Insert(0, new ListItem("--请选择县区--", "0"));
        }
    }
    protected void ddlCity_SelectedIndexChanged(object sender, EventArgs e)       //第二层,城市选择事件
    {
        int CityID = Convert.ToInt32(ddlCity.SelectedValue);
        if (CityID > 0)
        {
            string sqlDistrict = "SELECT * FROM S_District WHERE CityID=" + CityID + "";       //根据城市ID找县区
            ddlDistrict.DataSource = getDataSet(sqlDistrict);
            ddlDistrict.DataTextField = "DistrictName";
            ddlDistrict.DataValueField = "DistrictID";
            ddlDistrict.DataBind();
 
            ddlDistrict.Items.Insert(0, new ListItem("--请选择县区--", "0"));
        }
        else
        {
            ddlDistrict.Items.Clear();
            ddlDistrict.Items.Insert(0, new ListItem("--请选择县区--", "0"));
        }
    }
    protected void ddlDistrict_SelectedIndexChanged(object sender, EventArgs e)       //第三层,县区选择事件
    {
        int ProvinceID = Convert.ToInt32(ddlProvince.SelectedValue);
        int CityID = Convert.ToInt32(ddlCity.SelectedValue);
        int DistrictID = Convert.ToInt32(ddlDistrict.SelectedValue);
        if (ProvinceID > 0 && CityID > 0 && DistrictID > 0)
        {
            Response.Write("您选择的省份ID:" + ProvinceID + "城市ID:" + CityID + "县区ID:" + DistrictID + "");
        }
    }
 
    public DataSet getDataSet(string sql)       //自定义方法,sql语句参数,返回DataSet数据集
    {
        string connection = ConfigurationManager.ConnectionStrings["connectionBlogs"].ConnectionString;
        SqlConnection conn = new SqlConnection(connection);
        SqlDataAdapter sda = new SqlDataAdapter(sql, conn);
        DataSet ds = new DataSet();
        sda.Fill(ds);
        return ds;
    }
}
 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值