关于asp的三级联动----纯C#

 test.aspx
<form id="form1" runat="server">
    <div style="background-color:#9b7cba;">
        <asp:DropDownList ID="Sheng" runat="server" AutoPostBack="True" OnSelectedIndexChanged="Sheng_SelectedIndexChanged"></asp:DropDownList>
        省
        <asp:DropDownList ID="Shi" runat="server" AutoPostBack="True" OnSelectedIndexChanged="Shi_SelectedIndexChanged">
        </asp:DropDownList>市
        <asp:DropDownList ID="Qu" runat="server">
        </asp:DropDownList>区

    </div>
    </form>
test.aspx.cs
 public static SqlConnection myconn;
    public static void Open()
    {
        string connectionString = "server=*;database=*;uid=*;pwd=*";


        myconn = new SqlConnection(connectionString);


        myconn.Open();
        //SqlConnection myconn = new SqlConnection("server=localhost;database=matrixkey;uid=sa;pwd=sa");
    }


    public static void Close()
    {
        myconn.Close();
    }
    public void mat()
    {
        Open();
        string sql_sheng = "select name from province";
        SqlCommand cmd = new SqlCommand(sql_sheng, myconn);
        SqlDataReader dr = cmd.ExecuteReader();
        while (dr.Read())
        {
            Sheng.Items.Add(dr["name"].ToString());
        }
        dr.Close();
        Close();
    }
    /// <summary>   
    /// 省选定,加载市   
    /// </summary>   
    public void rix()
    {
        string sql_shi = "select city.code,city.name from city,province where province.code = city.provinceID and province.name = '" + Sheng.SelectedItem.Text + "'";
        SqlCommand cmd = new SqlCommand(sql_shi, myconn);
        SqlDataReader dr = cmd.ExecuteReader();
        while (dr.Read())
        {
            Shi.Items.Add(dr["name"].ToString());
        }
        dr.Close();
    }
    /// <summary>   
    /// 市选定,加载区   
    /// </summary>   
    public void key()
    {
        string sql_qu = "select area.name from area,city where city.code = area.cityid and city.name = '" + Shi.SelectedItem.Text + "'";
        SqlCommand cmd = new SqlCommand(sql_qu, myconn);
        SqlDataReader dr = cmd.ExecuteReader();
        while (dr.Read())
        {
            Qu.Items.Add(dr["name"].ToString());
        }
        dr.Close();
    }
    /*在页面加载时,从数据库载入省列表到“省”下拉控件*/
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            mat();
        }
    }




    /*在选定“省”之后,即“省”被改变后*/
    /*从数据库载入市列表到“市”下拉控件*/
    protected void Sheng_SelectedIndexChanged(object sender, EventArgs e)
    {
        Shi.Items.Clear();  //标记   
        Open();
        rix();
        Close();
    }




    /*在选定“市”之后,即“市”被改变后*/
    /*从数据库载入区列表到“区”下拉控件*/
    protected void Shi_SelectedIndexChanged(object sender, EventArgs e)
    {
        Qu.Items.Clear();  //标记   
        Open();
        key();
        Close();
    }  

转载于:https://my.oschina.net/zhaoweizhang/blog/666250

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值