在网站注册的页面上经常要选择注册地点,如果改变省的名称就能出现对应的市级的名称,将为用户带来很大的方便,下面就将我的实现过程给大家看一下
首先,建立数据库“Place”,表里面的内容如下图所示:
窗体布局如下图所示:
下面是实现代码:
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
{
string strCon = "server=.;database=Place;uid=sa;pwd=123456";
protected void Page_Load(object sender, EventArgs e)
{
//DropDownList1.Text = "北京市";
if (!IsPostBack)
{
SqlConnection sqlcon = new SqlConnection(strCon);
string sqlstr = "select * from Province";
string strCity = "select * from City where Province = '北京市'";
SqlDataAdapter myda = new SqlDataAdapter(sqlstr, strCon);
SqlDataAdapter mydaCity = new SqlDataAdapter(strCity, sqlcon);
DataSet myds = new DataSet();
DataSet mydsCity = new DataSet();
sqlcon.Open();
myda.Fill(myds);
mydaCity.Fill(mydsCity);
DropDownList1.DataSource = myds;
DropDownList1.DataValueField = "ProvinceName";
DropDownList1.DataBind();
DropDownList2.DataSource = mydsCity;
DropDownList2.DataValueField = "CityName";
DropDownList2.DataBind();
sqlcon.Close();
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection sqlcon = new SqlConnection(strCon);
string sqlstr = "select * from City where Province = '" + DropDownList1.SelectedValue.Trim() + "'";
SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
DataSet myds = new DataSet();
sqlcon.Open();
myda.Fill(myds);
DropDownList2.DataSource = myds;
DropDownList2.DataValueField = "CityName";
DropDownList2.DataBind();
sqlcon.Close();
}
}
}
接下来运行就可以了