Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
发布时间 - 2026-01-11 01:48:11 点击率:次本文主要介绍使用 Jquery+Ajax+xml,首先需要一个包含我国所有地图信息的xml文档。

此处选用的xml文档(共1000多行)主要结构如下:
<?xml version="1.0" encoding="utf-8"?> <area Country="China"> <province ID="1" provinceID="110000" province="北京市"> <City CityID="110100" City="市辖区"> <Piecearea PieceareaID="110101" Piecearea="东城区" /> <Piecearea PieceareaID="110102" Piecearea="西城区" /> <Piecearea PieceareaID="110103" Piecearea="崇文区" /> <Piecearea PieceareaID="110104" Piecearea="宣武区" /> <Piecearea PieceareaID="110105" Piecearea="朝阳区" /> <Piecearea PieceareaID="110106" Piecearea="丰台区" /> <Piecearea PieceareaID="110107" Piecearea="石景山区" /> <Piecearea PieceareaID="110108" Piecearea="海淀区" /> <Piecearea PieceareaID="110109" Piecearea="门头沟区" /> <Piecearea PieceareaID="110111" Piecearea="房山区" /> <Piecearea PieceareaID="110112" Piecearea="通州区" /> <Piecearea PieceareaID="110113" Piecearea="顺义区" /> <Piecearea PieceareaID="110114" Piecearea="昌平区" /> <Piecearea PieceareaID="110115" Piecearea="大兴区" /> <Piecearea PieceareaID="110116" Piecearea="怀柔区" /> <Piecearea PieceareaID="110117" Piecearea="平谷区" /> </City> <province>
制作对应的表单,根据设置选择省/市的动作:
<h2>地区三级联动菜单</h2> 省:<select id="province" onchange="showcity()"><option value="0">-请选择-</option></select> 市:<select id="city" onchange="showdistrict()"><option value="0">-请选择-</option></select> 地区:<select id="district"><option value="0">-请选择-</option></select>
以下是JS代码行
//声明一个全局变量,用于存储第一次请求的xml信息,避免后续多次频繁请求xml
var xmldom =null;
//获取并显示省份信息
function showprovince(){
//使用ajax去服务器获得xml文件里面的省份信息
$.ajax({
url:'./ChinaArea.xml',
//data:
dataType:'xml',//相当于调用responseXML
type:'get',
success:function(msg){
//将返回的xml信息赋予xmldom
xmldom = msg;
//获得province 元素节点对象
var prov = $(msg).find('province');
//遍历省份信息
prov.each(function(k,v){
var nm = $(this).attr('province');
var id = $(this).attr('provinceID');
//追加到指定的节点
$('#province').append("<option value="+id+">"+nm+"</option>");
});
}
});
}
//网页加载显示省份信息
$(function(){
showprovince();
});
function showcity(){
//获取 省份 的id
var pid = $('#province option:selected').val();
//根据xmldom信息 找到指定的省份节点
var xml_province = $(xmldom).find('province[provinceID='+pid+']');
// 获取对应所有县市节点
var city = $(xml_province).find('City');
//在遍历追加前,先清空此前已经显示的信息
$('#city').empty();
$('#city').append('<option value="0">-请选择-</option>');
//遍历追加县市
city.each(function(k,v){
var nm = $(this).attr('City');
var id = $(this).attr('CityID');
$('#city').append('<option value='+id+'>'+nm+'</option>');
});
}
//以下函数的逻辑与showcity()的逻辑一致
function showdistrict(){
//获取 县市 的id
var cid = $('#city option:selected').val();
//根据xmldom信息 找到指定的县市节点
var xml_city = $(xmldom).find('City[CityID='+cid+']');
// 获取对应所有地区节点
var district = $(xml_city).find('Piecearea');
$('#district').empty();
$('#district').append('<option value="0">-请选择-</option>');
district.each(function(k,v){
var nm = $(this).attr('Piecearea');
var id = $(this).attr('PieceareaID');
$('#district').append('<option value='+id+'>'+nm+'</option>');
});
}
以上这篇Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# jquery
# 地区三级联动
# jquery+ajax实现省市区三级联动效果简单示例
# jQuery实现的省市县三级联动菜单效果完整实例
# 基于jQuery+JSON的省市二三级联动效果
# 中国地区三级联动下拉菜单效果分析
# jquery读取xml文件实现省市县三级联动的方法
# jQuery ajax实现省市县三级联动
# 省市区三级联动jquery实现代码
# 请选择
# 遍历
# 县市
# 给大家
# 门头沟区
# 平谷区
# 怀柔区
# 房山区
# 石景山区
# 顺义区
# 大兴区
# 通州区
# 昌平区
# 宣武区
# 崇文区
# 丰台区
# 西城区
# 东城区
# 文档
# 朝阳区
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
,南京靠谱的征婚网站?
北京企业网站设计制作公司,北京铁路集团官方网站?
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
Laravel如何使用Livewire构建动态组件?(入门代码)
如何在腾讯云免费申请建站?
在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?
Java遍历集合的三种方式
网站建设要注意的标准 促进网站用户好感度!
Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置
实例解析angularjs的filter过滤器
HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】
如何在阿里云虚拟服务器快速搭建网站?
Laravel如何处理文件下载请求?(Response示例)
Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧
网站制作企业,网站的banner和导航栏是指什么?
太平洋网站制作公司,网络用语太平洋是什么意思?
Laravel如何优化应用性能?(缓存和优化命令)
如何在IIS服务器上快速部署高效网站?
想要更高端的建设网站,这些原则一定要坚持!
如何在服务器上配置二级域名建站?
Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法
Laravel如何与Pusher实现实时通信?(WebSocket示例)
网站制作大概多少钱一个,做一个平台网站大概多少钱?
如何快速搭建FTP站点实现文件共享?
Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录
javascript日期怎么处理_如何格式化输出
java获取注册ip实例
WordPress 子目录安装中正确处理脚本路径的完整指南
三星网站视频制作教程下载,三星w23网页如何全屏?
如何在阿里云虚拟主机上快速搭建个人网站?
HTML 中如何正确使用模板变量为元素的 name 属性赋值
SQL查询语句优化的实用方法总结
,交易猫的商品怎么发布到网站上去?
谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复
活动邀请函制作网站有哪些,活动邀请函文案?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
如何解决hover在ie6中的兼容性问题
Laravel观察者模式如何使用_Laravel Model Observer配置
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
Laravel如何实现全文搜索功能?(Scout和Algolia示例)
免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
免费网站制作appp,免费制作app哪个平台好?
Laravel如何发送系统通知?(Notification渠道示例)
Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】
公司网站制作价格怎么算,公司办个官网需要多少钱?
如何用IIS7快速搭建并优化网站站点?

