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 ...
随机推荐
- ThinkPHP 使用极光推送给ios推送消息
HTML <div id="wrap"><a href="<{:U('Push/pushData')}>">推送</a ...
- python:open/文件操作
open/文件操作f=open('/tmp/hello','w') #open(路径+文件名,读写模式) #读写模式:r只读,r+读写,w新建(会覆盖原有文件),a追加,b二进制文件.常用模式 如:' ...
- C语言结构体占用空间内存大小解析
结构体的数据类型的有点我们就不啰嗦了,直接来看相同数据结构体的几种书写的格式吧. 格式一: 01.struct tagPhone 02.{ 03. char A; 04. int ...
- Spark Executor Driver资源调度小结【转】
一.引子 在Worker Actor中,每次LaunchExecutor会创建一个CoarseGrainedExecutorBackend进程,Executor和CoarseGrainedExecut ...
- 脚本两则--用于快速部署HADOOP,SPARK这些(特别是VM虚拟机模板部署出来的)。。
感觉可能只是适合我自己的部署习惯吧,且只针对CENTOS6及以下版本,以后有时间,可能还是要改进.. 1,从VM的模块产生的虚拟机,如何快速搞定网络配置? #!/bin/bash #usage:./i ...
- 让程序自动以管理员身份运行(用到了DuplicateToken,模拟管理员的身份,不可思议)
using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Secu ...
- moveToThread的最简单用法(依葫芦画瓢即可)(使得线程也更偏向于信号槽的使用方法)
/*! * \file main.cpp * * Copyright (C) 2010, dbzhang800 * All rights reserved. * */ #include <QtC ...
- MySQL通用批量写入工具(Python)
背景 平台目前的分析任务主要以Hive为主,分析后的结果存储在HDFS,用户通过REST API或者Rsync的方式获取分析结果,这样的方式带来以下几个问题: (1)任务执行结束时间未知,用户 ...
- C# POST数据到指定页面,并跳转至该页面
/// <summary> /// 跨页面POST数据 /// </summary> public class RemotePost : Dictionary<strin ...
- ubunt 基于deb 配置本地apt 源 分成仅本机使用,局域网使用2种
dpkg-scanpackages /software /dev/null | gzip>/software/Packages.gz