`
周一Monday
  • 浏览: 346279 次
  • 来自: 北京
社区版块
存档分类
最新评论

javascript与xml实现二级联动

阅读更多



 

 

1.city.xml

<?xml version="1.0" encoding="GB2312"?>
<china>
	<province name="吉林省">
		<city>长春</city>
		<city>四平</city>
		<city>通化</city>
	</province>
	<province name="辽宁省">
		<city>沈阳</city>
		<city>大连</city>
		<city>鞍山</city>
	</province>
	<province name="山东省">
		<city>济南</city>
		<city>青岛</city>
		<city>威海</city>
	</province>
</china>	

 

2.city.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>test01.html</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
  </head>
  <body>
     <select id="province" name="province">
       <option value="">请选择....</option>
	   <option value="吉林省">吉林省</option>
	   <option value="辽宁省">辽宁省</option>
	   <option value="山东省">山东省</option>
     </select>
	 <select id="city" name="city">
	 	<option value="">请选择.....</option>
	 </select>
  </body>
  
    <script type="text/javascript">
     window.onload=function(){
	      document.getElementById("province").onchange=function(){
		  	
			  //取得省值
		  	  var selectProvince=this.value;
			  
			  //获取城市节点
			  var cityElement=document.getElementById("city");

			 //删除的时候从后往前删
			  var cityOptionElements=cityElement.getElementsByTagName("option");
			  for(var i=cityOptionElements.length-1;i>0;i--){
			  	  cityElement.removeChild(cityOptionElements[i]);
			  }
			  
			  //解析xml文件
			  var xmlDoc=parseXML("city.xml");
			  
			  //声明省的节点
			   var provinceElement=null;
	
			  //解析XML节点
			  var provinceXmlElements=xmlDoc.getElementsByTagName("province");
			  for(var i=0;i<provinceXmlElements.length;i++){
			     var provinceXmlElement=provinceXmlElements[i];
				 var xmlNameValue=provinceXmlElement.getAttribute("name");
				 if(selectProvince==xmlNameValue){
					provinceElement=provinceXmlElement;
					break;
				 }
			  }
			  
			 //在城市下增加option元素
			  if(provinceElement!=null){
                  var cityXmlElements=provinceElement.getElementsByTagName("city");	
				  for(var i=0;i<cityXmlElements.length;i++){
				  	 var cityXmlElement=cityXmlElements[i];
					 var cityxmlValue=cityXmlElement.firstChild.nodeValue;
					 var optionElement=document.createElement("option");
					 optionElement.setAttribute("value",cityxmlValue);
					 var textElement=document.createTextNode(cityxmlValue);
					 optionElement.appendChild(textElement);
					 cityElement.appendChild(optionElement);
				  }	
			  }
		  }  	
	 }	
	 
	 //解析xml文件
	 function parseXML(filename){
	     var xmlDoc;
	     try{
		 	  //Internet Explorer
		 	 xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		 }
	      catch(e){
	           try{
	  				//Firefox, Mozilla, Opera, etc.
		   			 xmlDoc=document.implementation.createDocument("","",null);
			   }
	          catch(e){}
	       }
		 
		 //关闭异步加载
	     xmlDoc.async=false;
	     xmlDoc.load(filename);
         return  xmlDoc; 
	 }
  </script>


</html>

 

实现三级联动:  http://1194867672-qq-com.iteye.com/blog/1154154

  • 大小: 5.9 KB
分享到:
评论

相关推荐

    jquery解析xml并实现二级联动

    本主题将深入探讨如何使用jQuery解析XML数据,并利用这些数据实现省市二级联动的效果。这种功能常见于地理选择,用户在选择省份后,下拉菜单会自动更新展示对应省份的城市选项。 首先,我们需要理解XML(Extensible...

    JavaScript+xml实现下拉二级联动菜单

    ### JavaScript + XML 实现下拉二级联动菜单 #### 一、简单说明与功能特性 本文将详细介绍如何利用JavaScript和XML来构建一个具有二级联动功能的下拉菜单。此菜单的一个显著优势是它能够覆盖网页上的任何元素,...

    js解析xml实现二级,三级联动简单成功实例源代码及相关文档

    二级联动的基本思想是,当用户选择一个省份时,动态加载并显示该省份下的城市。同样,当选择城市后,会加载并显示对应的城市下的区县。这涉及到事件监听和DOM操作。例如,可以为省份选择器添加`change`事件监听器: ...

    ajax dwr 框架实现二级联动下拉列表源码

    通过分析这些文件,我们可以深入了解DWR如何与HTML、JavaScript配合,实现实时的数据交互和二级联动下拉列表的功能。 总结来说,利用Ajax和DWR框架实现的二级联动下拉列表,使得用户可以在不刷新页面的情况下完成...

    javascript 实现二级联动

    根据提供的信息,我们可以了解到这份材料主要讲解了如何使用JavaScript实现二级联动效果。下面将详细解释这一知识点,并结合给出的部分代码进行分析。 ### JavaScript 实现二级联动 #### 一、二级联动概念 二级...

    ajax+ChinaArea.xml实现三级联动

    在本案例中,“ajax+ChinaArea.xml实现三级联动”指的是利用Ajax技术,配合一个名为“ChinaArea.xml”的XML文件,来创建一个展示中国行政区域的三级联动下拉菜单系统。 首先,ChinaArea.xml文件通常包含中国各个...

    原生AJAX或jQuery实现二级联动选择以及解析XML和JSON数据格式

    本篇博客主要探讨如何利用这两者实现二级联动选择,即当用户在一级选择中作出选择时,二级选择会自动更新,以及如何解析XML和JSON数据格式。下面我们将详细探讨这些知识点。 首先,原生AJAX是通过JavaScript直接与...

    js实现三级联动展现

    在网页开发中,"三级联动"是...总的来说,"js实现三级联动展现"是一个综合运用JavaScript动态操作DOM、XML数据解析以及AJAX异步通信的实际案例。这种技术在现代网页开发中广泛应用,对于提升用户交互体验有着重要作用。

    Java中二级联动的简单而实用例子

    在本例中,我们使用 JavaScript 和 Ajax 技术来实现二级联动。首先,我们在 index.jsp 文件中编写了 HTML 代码和 JavaScript 代码。HTML 代码用于创建两个 select 选择框,分别是 hero 和 skill。JavaScript 代码则...

    JavaScript案例-js二级联动菜单

    在本案例中,"js二级联动菜单"是指利用JavaScript实现的一种下拉菜单功能,这种菜单通常出现在网站导航中,当用户选择一级菜单时,相关的二级菜单会自动展开,提供更具体的选项。 一级和二级联动菜单的实现主要涉及...

    下拉框二级联动

    本文将详细讨论“下拉框二级联动”这一主题,以及如何利用AJAX和JSON技术来实现这一功能。 首先,我们要理解什么是二级联动。在多级选择的场景下,二级联动指的是当用户在一个下拉框(Dropdown)中做出选择时,第二...

    jquery\xml城市三级联动

    这个"jquery+xml城市三级联动"项目是利用jQuery库和XML数据来实现这一功能的示例。jQuery是一个强大的JavaScript库,它简化了HTML文档遍历、事件处理、动画制作和Ajax交互。而XML(Extensible Markup Language)则是...

    帝国CMS二级联动插件(ajax下拉列表) 帝国CMS二级联动插件(ajax下拉列表).rar

    3. 调用插件:在需要实现二级联动的页面模板中,插入插件调用代码,确保两个下拉列表的ID正确,以便JavaScript可以正确识别和绑定事件。 4. 数据库准备:确保数据库中有正确的关联数据,比如省份和城市的数据,这样...

    JavaWeb通过ajax、json实现省市二级联动

    总的来说,JavaWeb通过AJAX和JSON实现省市二级联动,涉及了前端的JavaScript技术、后端的JavaServlet处理和数据库操作。这一过程体现了前后端分离的思想,提高了页面的交互性和响应速度。理解并掌握这些技术,对于...

    一个和数据库关联的,二级联动菜单示例ajax实现

    这个"一个和数据库关联的,二级联动菜单示例ajax实现"是一个实用的代码示例,它展示了如何利用AJAX(异步JavaScript和XML)技术动态加载并更新二级菜单的内容,根据用户在一级菜单中的选择。 首先,我们来理解一下...

    json格式省市二级联动xml文件

    本主题主要关注如何使用XML文件实现省市二级联动效果,以及这种联动在实际应用中的意义。 在网页或应用设计中,省市联动通常用于地理信息的选择,例如用户在填写地址时,先选择省份,接着根据省份选择城市。这种...

    dwr框架+struts+Hibrenate实现下拉菜单二级联动

    "dwr框架+struts+Hibernate实现下拉菜单二级联动"是一个典型的Web应用程序开发技术组合,它旨在创建一个动态且响应式的交互式UI,特别是在处理关联数据时。下面我们将深入探讨这个主题。 首先,DWR(Direct Web ...

    asp数据库二级联动

    在ASP中实现数据库二级联动,通常是指在一个下拉菜单或选择框中选择一个选项后,根据该选项自动更新另一个下拉菜单或选择框的内容,这种效果在数据筛选和表单填写中非常常见。这种功能在网站的导航、筛选、查询等...

    struts2 ajax实现的二级联动

    在Struts2框架中,我们可以利用Ajax来实现二级联动效果,即在一个下拉框的选择改变时,通过Ajax请求动态地更新另一个下拉框的内容。 首先,我们需要了解Struts2的Action类,它是处理用户请求的核心。在实现二级联动...

    php+ajax二级联动

    在二级联动场景中,PHP主要负责后端逻辑,包括获取数据库中的数据并以JSON或XML格式返回给前端。 AJAX(Asynchronous JavaScript and XML)则是一种在不重新加载整个网页的情况下,更新部分网页的技术。尽管XML在...

Global site tag (gtag.js) - Google Analytics