省市县三级连动(数据在一个表中)
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="省市縣三級連接.aspx.cs" Inherits="省級連動.省市縣三級連接" %>
<!DOCTYPE html PUBLIC "-//W3C//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" Width="100px">
??????? </asp:DropDownList>
??????? <asp:DropDownList ID="ddlCity" runat="server" AutoPostBack="true"
??????????? onselectedindexchanged="ddlCity_SelectedIndexChanged" Width="100px">
??????? </asp:DropDownList>
??????? <asp:DropDownList ID="ddlArear" runat="server" Width="100px">
??????? </asp:DropDownList>
??? </div>
??? </form>
</body>
</html>
后臺:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
namespace 省級連動
{
??? public partial class 省市縣三級連接 : System.Web.UI.Page
??? {
??????? protected void Page_Load(object sender, EventArgs e)
??????? {
??????????? if (!IsPostBack)
??????????? {
??????????????? GetProvince();
??????????? }
??????? }
??????? private void LoadData(string id, DropDownList ddl)
??????? {
??????????? string strcon = "Data Source=PC-Dll;Initial Catalog=News; Persist Security Info=true;User Id=sa;Password=linlin ";
??????????? SqlConnection conn = new SqlConnection(strcon);
??????????? SqlCommand cmd = new SqlCommand();
??????????? cmd.Connection = conn;
??????????? 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";
??????????? ddl.DataValueField = "A_Id";
??????????? ddl.DataBind();
??????????? if (id=="0")
??????????? {
??????????????? ListItem item = new ListItem("-------請選擇-------","0");
??????????????? ddl.Items.Insert(0,item);
??????????? }
??????? }
??????? private void GetProvince()
??????? {
??????????? LoadData("0",this.ddlProvince);
??????? }
??????? 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
??????????? {
??????????????? this.ddlCity.Items.Clear();
??????????????? this.ddlArear.Items.Clear();
??????????? }
??????? }
??????? protected void ddlCity_SelectedIndexChanged(object sender, EventArgs e)
??????? {
??????????? string id = this.ddlCity.SelectedItem.Value;
??????????? LoadData(id,this.ddlArear);
??????? }
??? }
}
轉載于:https://www.cnblogs.com/duanlinlin/archive/2013/03/14/2960238.html
總結
以上是生活随笔為你收集整理的省市县三级连动(数据在一个表中)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: J2EE中使用jstl报http://j
- 下一篇: 可恶的.NET FRAME,将一切变得更