`
kuaile863
  • 浏览: 115975 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Dom解析XML文件实现省市县三级下拉菜单的实现

阅读更多


 Dom
解析XML文件实现省市县三级下拉菜单的实现

今天回顾了一下javascript,并用Dom解析XML文件实现省市县三级下拉菜单的实现。

在这当中解决了oper firefox等等浏览器的兼容问题。在oper11+浏览器中要设置一下浏览器才能兼容。

如图:

 

oper 地址栏中输入 :“aboutconfig ,会出现首选项编辑器。在user Prefs“中

把“Allow File XMLHttpRequest“勾选上才行。

Java效果实现如图:



 

下面是如何实现省市县三级菜单联动js代码:

 

   注意:详细代码在附件中并带有xml文件.

<script type="text/javascript"> function getdoc() { var xmldoc; try { xmldoc = new ActiveXObject("Microsoft.XMLDOM"); } catch (err) { try { xmldoc = document.implementation.createDocument("", "", null); } catch (e) { alert("您的浏览器实在是太低........"); } } xmldoc.async = false; xmldoc.load("city.xml"); return xmldoc; } window.onload = function() { var xmldoc = getdoc(); var root = xmldoc.documentElement; var pro = root.childNodes; var sheng = document.getElementById("pros"); var shi = document.getElementById("citys"); var xian = document.getElementById("areas"); for ( var i = 0; i < pro.length; i++) { if (pro[i].nodeType == 1) { var shengopt = document.createElement("option"); shengopt.appendChild(document.createTextNode(pro[i].getAttribute("name"))); shengopt.setAttribute("value", pro[i].getAttribute("postcode")); sheng.appendChild(shengopt); if(pro[i].getAttribute("postcode")=="100000"){ var cname=pro[i].childNodes; for(var j=0;j<cname.length;j++){ var cityopt = document.createElement("option"); cityopt.appendChild(document.createTextNode(cname[j].getAttribute("name"))); cityopt.setAttribute("value", cname[j].getAttribute("postcode")); shi.appendChild(cityopt); var xname=pro[i].childNodes; for(var k=0;k<cname.length;k++){ var xianopt = document.createElement("option"); xianopt.appendChild(document.createTextNode(xname[k].getAttribute("name"))); xianopt.setAttribute("value", xname[k].getAttribute("postcode")); xian.appendChild(xianopt); } } } } } sheng.onchange = function() { var shengs = sheng.options; var num = shengs.selectedIndex; shi.length=1; xian.length=1; var ppo = shengs[num].getAttribute("value"); for ( var i = 0; i < pro.length; i++) { if (pro[i].nodeType == 1) { var pos = pro[i].getAttribute("postcode"); shi.length=1; if (pos==ppo) { var cities = pro[i].childNodes; for ( var j = 0; j < cities.length; j++) { if(cities[j].nodeType ==1){ var shiopt = document.createElement("option"); shiopt.appendChild(document.createTextNode(cities[j].getAttribute("name"))); shiopt.setAttribute("value", cities[j].getAttribute("postcode")); shi.appendChild(shiopt); } } break; } } } } shi.onchange = function() { var shis = shi.options; var num = shis.selectedIndex; var spo = shis[num].getAttribute("value"); for ( var i = 0; i < pro.length; i++) { if (pro[i].nodeType == 1) { var citys = pro[i].childNodes; for ( var j = 0; j < citys.length; j++) { if (citys[j].nodeType == 1) { var opss = citys[j].getAttribute("postcode"); if (opss == spo) { xian.length=1; var areas = citys[j].childNodes; for ( var k = 0; k < areas.length; k++) { if (areas[k].nodeType == 1) { var xianopt = document.createElement("option"); xianopt.appendChild(document.createTextNode(areas[k].getAttribute("name"))); xianopt.setAttribute("value", areas[k].getAttribute("postcode")); xian.appendChild(xianopt); } } break; } } } } } } } //--> </script>


 

  • 大小: 23.1 KB
  • 大小: 15.9 KB
2
1
分享到:
评论

相关推荐

    js解析XML文件实现省市县三级级联下拉菜单

    在JavaScript(JS)中解析XML文件来实现省市县三级级联下拉菜单是一种常见的前端开发技术,主要用于构建交互式Web应用程序。这篇博文链接提供了一个具体的示例,通过XML数据存储省市县信息,然后使用JavaScript进行...

    JS解析XML实现省市县三级联动

    在网页开发中,"JS解析XML实现省市县三级联动"是一种常见的交互功能,主要用于地理信息的选择,例如用户在填写地址时选择省份、城市和区县。这个功能通过JavaScript(JS)解析XML数据来动态更新下拉菜单,实现联动...

    .net+xml+ajax.dll实现省市县三级联动无刷新代码例子

    这个示例代码可以帮助开发者理解如何在.NET环境中结合XML和AJAX实现前后端通信,以及如何构建一个高效、无刷新的省市县三级联动功能。对于初学者来说,这是一个很好的实践案例,有助于深入理解Web开发中的异步交互和...

    使用Ajax解析xml实现省市县三级联动

    在本案例中,Ajax用于动态加载和解析XML文件,从而实现省市县的联动选择。 首先,我们需要一个XML文件,如`city.xml`,其中包含省、市、县的结构数据。例如: ```xml 省份A" postcode="10000"&gt; 城市A1" ...

    jquery结合ajax和xml实现省市县三级联动

    在网页开发中,实现省市县三级联动是一种常见的交互功能,主要用于动态更新下拉菜单选项,让用户根据选择的上级地区自动筛选出相应的下级地区。在这个过程中,jQuery、AJAX 和 XML 技术起到了关键作用。下面我们将...

    js+xml省市县三级联动实现【完成重构】

    在IT行业中,"js+xml省市县三级联动实现【完成重构】"是一个常见的前端开发任务,主要涉及JavaScript(js)和XML(eXtensible Markup Language)技术,用于创建具有交互性的省市县三级联动选择功能。这种功能常见于...

    JQuery 解析XML省 市 县 三级联动

    在IT领域,尤其是在Web开发中,"JQuery 解析XML省市区县三级联动"是一个常见的需求,主要用于构建交互式的下拉菜单,使得用户在选择省份时,对应的市和县会根据所选省份动态加载。这样的功能可以提升用户体验,减少...

    Xml+JS省市县三级联动(兼容IE FF)

    在这个项目中,"Xml+JS省市县三级联动菜单(兼容版)"文件很可能是实现这一功能的源代码,包含HTML、JavaScript和可能的XML文件。开发者可以通过学习这个示例,理解如何在实际项目中处理XML数据并实现跨浏览器的兼容...

    省市县三级级联的xml文件和读取方法

    在省市县三级级联的XML文件中,每个省市县信息可以被封装为一个独立的节点,如`&lt;province&gt;`, `&lt;city&gt;`, 和 `&lt;county&gt;`,并按照层级关系嵌套。例如: ```xml 省份1"&gt; 城市1"&gt; 县/区1"/&gt; 县/区2"/&gt; 城市2"&gt; ...

    解决Js解析xml浏览器不兼容问题及省市区三级联动实现

    本文将深入探讨如何解决这些问题,并介绍如何利用XML数据实现省市区三级联动的功能。 首先,让我们来理解XML(Extensible Markup Language)的本质。XML是一种标记语言,常用于存储和传输结构化数据。它具有自我...

    JS省市区三级联动,XML

    标题中的"JS省市区三级联动,XML"指的是一种使用JavaScript技术和XML数据格式来实现的三级联动功能。XML(Extensible Markup Language)是一种结构化数据存储格式,常用于数据交换和配置文件。在这个场景下,XML可能...

    json+jquery+html省市县三级联动

    在HTML中,我们经常需要实现省市县三级联动的效果,即在一个下拉菜单选择省后,第二个下拉菜单自动填充该省的城市,再选择城市后,第三个下拉菜单显示对应城市的县或区。这种功能在诸如地址选择、订单填写等场景中...

    ajax,struts2,json实现省市区三级联动源码含全国省市区数据库

    “ajax,struts2,json实现省市区三级联动源码含全国省市区数据库”这一标题揭示了这个压缩包包含的是一项使用AJAX、Struts2和JSON技术来实现的省市区三级联动功能的源代码。这项技术常用于web应用中,允许用户在选择...

    javaweb省市县三级联动 Ajax 使用javweb 和 ajax 相结合, 实现省市县三级联动.zip

    在JavaWeb开发中,省市县三级联动是一种常见的需求,它用于在用户选择省份时自动更新城市选项,选择城市时更新县区选项,提供便捷的用户交互体验。本项目利用Ajax技术实现了这一功能,使得页面无需刷新即可完成数据...

    js+xml三级联动省市区

    在IT行业中,"js+xml三级联动省市区"是一种常见的前端交互功能,主要用于用户在网页上进行省、市、区(县)的选择。这种功能通常应用于地址填写、订单配送等场景,提供用户友好的地理信息输入方式。下面我们将深入...

    JS+XML 省市区三级联动 支持ie,firefox,Opera

    JS将读取并解析这个XML文件,获取到所有省市区的信息,然后用于构建和更新下拉菜单。 两种绑定方式指的是如何将数据与界面元素关联起来。一种是通过城市代码绑定,这种情况下,每个省市区都有一个唯一的数字代码,...

    省市三级联动(XML)

    本案例中提到的"省市三级联动(XML)"是一个基于XML(eXtensible Markup Language)的数据结构,用于存储和处理省级、市级和区县级的地理信息,以便在网页应用中创建动态的、交互式的下拉菜单。XML是一种标记语言,...

    省市县三级联动asp.net+ajax

    在IT行业中,"省市县三级联动asp.net+ajax"是一个常见的功能需求,特别是在网页表单设计时,用于实现用户选择省、市、县(区)的交互过程。这个功能允许用户在选择省份后,市、县(区)的下拉菜单会自动更新,无需...

    JS省市县三级联动

    在JavaScript编程中,"JS省市县三级联动"是一种常见的功能需求,主要应用于各种Web应用程序,如在线表单、电子商务网站等,它允许用户在选择省份后,下拉菜单自动更新展示对应省份的城市,接着选择城市后,再显示该...

Global site tag (gtag.js) - Google Analytics