ASP.NET实现省市区三级联动(局部刷新)
跟前一篇ASP.NET实现年月日三级联动(局部刷新)一样,没什么技术含量,直接上代码
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:DropDownList ID="ddl_Province" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddl_Province_SelectedIndexChanged">
</asp:DropDownList>
<asp:DropDownList ID="ddl_City" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddl_City_SelectedIndexChanged">
</asp:DropDownList>
<asp:DropDownList ID="ddl_Area" runat="server">
</asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
BindProvince();
BindCity(ddl_Province.SelectedItem.Value);
BindArea(ddl_City.SelectedItem.Value);
}
} #region 三级省市区联动xml
private void BindProvince()
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("ChinaArea.xml"));
XmlNodeList nodelist = xmlDoc.SelectNodes("area/province[@provinceID]");
ListItem li = null;
foreach (XmlNode myNode in nodelist)
{
li = new ListItem();
li.Value = myNode.Attributes["provinceID"].Value;
li.Text = myNode.Attributes["province"].Value;
this.ddl_Province.Items.Add(li);
}
}
private void BindCity(string code)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("ChinaArea.xml"));
XmlNodeList nodelist = xmlDoc.SelectNodes(string.Format("area/province[@provinceID={0}]/City",code));
ListItem li = null;
foreach (XmlNode myNode in nodelist)
{
li = new ListItem();
li.Value = myNode.Attributes["CityID"].Value;
li.Text = myNode.Attributes["City"].Value;
this.ddl_City.Items.Add(li);
}
} private void BindArea(string code)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("ChinaArea.xml"));
XmlNodeList nodelist = xmlDoc.SelectNodes(string.Format("area/province/City[@CityID={0}]/Piecearea",code));
ListItem li = null;
foreach (XmlNode myNode in nodelist)
{
li = new ListItem();
li.Value = myNode.Attributes["PieceareaID"].Value;
li.Text = myNode.Attributes["Piecearea"].Value;
this.ddl_Area.Items.Add(li);
}
} protected void ddl_City_SelectedIndexChanged(object sender, EventArgs e)
{
ddl_Area.Items.Clear();
BindArea(ddl_City.SelectedItem.Value);
} protected void ddl_Province_SelectedIndexChanged(object sender, EventArgs e)
{
ddl_City.Items.Clear();
ddl_Area.Items.Clear();
BindCity(ddl_Province.SelectedItem.Value);
BindArea(ddl_City.SelectedItem.Value);
}
#endregion
http://www.res.isofteam.com/xml/area.txt
将连接中的文件保存到ChinaArea.xml中
ASP.NET实现省市区三级联动(局部刷新)的更多相关文章
- ajax省市区三级联动
jdbc+servlet+ajax开发省市区三级联动 技术点:jdbc操作数据库,ajax提交,字符拦截器,三级联动 特点:局部刷新达到省市区三级联动,举一反三可以做商品分类等 宗旨:从实战中学习 博 ...
- javaweb--json--ajax--mysql实现省市区三级联动(附三级联动数据库)
在web中,实现三级联动很常见,尤其是利用jquery+json.但是从根本上来说jquery并不是最能让人容易理解的,接下来从最基本的javascript开始,实现由javascript+json+ ...
- JS省市区三级联动
不需要访问后台服务器端,不使用Ajax,无刷新,纯JS实现的省市区三级联动. 当省市区数据变动是只需调正js即可. 使用方法: <!DOCTYPE html><html>< ...
- 用jsp实现省市区三级联动下拉
jsp+jquery实现省市区三级联动下拉 不少系统都需要实现省市区三级联动下拉,像人口信息管理.电子商务网站.会员管理等,都需要填写地址相关信息.而用ajax实现的无刷新省市区三级联动下拉则可以改善 ...
- jQuery省市区三级联动插件
体验效果:http://hovertree.com/texiao/bootstrap/4/支持PC和手机移动端. 手机扫描二维码体验效果: 代码如下: <!DOCTYPE html> &l ...
- 省市区三级联动 pickerView
效果图 概述 关于 省市区 三级联动的 pickerView,我想大多数的 iOS 开发者应该都遇到过这样的需求.在遇到这样的需求的时候,大多数人都会觉的这个很复杂,一时无从下手.其实真的没那么复杂. ...
- QQ JS省市区三级联动
如下图: 首先写一个静态的页面: <!DOCTYPE html> <html> <head> <title>QQ JS省市区三级联动</title ...
- 省市区三级联动(二)JS部分简单版
通过对上一篇<省市区三级联动>的学习发现JScript部分省市区的填充代码几乎相同,所以可以写成一个函数. 注意:html部分和chuli.php部分不变 1.下拉列表填充可以写成带参数的 ...
- 从QQ网站中提取的纯JS省市区三级联动
在 http://ip.qq.com/ 的网站中有QQ自己的JS省市区三级联动 QQ是使用引用外部JS来实现三级联动的.JS如下:http://ip.qq.com/js/geo.js <!DOC ...
随机推荐
- Websocket 与代理服务器如何交互? How HTML5 Web Sockets Interact With Proxy Servers
How HTML5 Web Sockets Interact With Proxy Servers Posted by Peter Lubberson Mar 16, 2010 With the re ...
- Yii2的相关学习记录,下载Yii2(一)
原先学习过Yii1的相关知识,虽然也是半懂不懂的,但稍微的结构是了解的.现在利用晚上的时间学习下Yii2的使用,打算建一个后台管理系统,这里记录下,以免自己以后忘记. 目前已看一部分Yii2的权威指南 ...
- 延迟加载并渐现内容的jquery插件lazyFade
http://www.jqcool.net/demo/201412/jquery-lazyfade/
- eclipse 编辑 python 中文乱码的解决方案
今天在学习python时做了一个用户输入一个目录地址,再输入内容,然后将输入的内容存入输入的目录文件中: 具体代码如下: #coding:utf- ''' Created on -- @author: ...
- 栈的顺序存储方式的C语言实现
/* 编译器:Dev-c++ 5.4.0 文件名:stack.cpp 代码版本号:1.0 时间:2015-10-10 20:08:54 */ #include <stdio.h> #inc ...
- UvaLive 6661 Equal Sum Sets (DFS)
Let us consider sets of positive integers less than or equal to n. Note that all elements of a set a ...
- POJ1700:Crossing River(过河问题)
POJ1700 题目链接:http://poj.org/problem?id=1700 Time Limit:1000MS Memory Limit:10000KB 64bit IO ...
- Python读取Excel数据
今天一同学给我发来一个Excel文件,让我帮他找一些信息,打开一开 8000多条数据.自己手工处理是不可能完成的的啦.作为一名程序员,当然要用程序来处理.处理生活中的问题当然是Python最为方便啦. ...
- C#泛型总结
泛型方法 在C#2.0中,方法可以定义特定于其执行范围的泛型参数,如下所示: public class MyClass<T> { //指定MyMethod方法用以执 ...
- 【HDOJ】4986 Little Pony and Alohomora Part I
递推.设n个盒子的Spell次数为S(n),期望为E(n).当有n个盒子时,可能第n把钥匙在第n个盒子中,此时的Spell次数应该为(n-1)!+S(n-1):当第n把钥匙不在第n个盒子中,混合排列, ...