当前位置: 首页 > 图文教程 > XML家族 > XML > 从xml中获取城市,省份名称

XML
XPath 11个实例
从xml中获取城市,省份名称
XMLTextReader和XmlDocument读取XML文件的比较
对于任意的XML的遍历
xml文件调用css
灵活调用xsl来解析xml文档(js异步)
XML 增、删、改和查示例
從無到有實現一個xml數據庫登錄驗証
利用XSLT把ADO记录集转换成XML
XML 问题: 超越DOM(轻松使用 DOM 的技巧和诀窍)
使用 XML 文件记录操作日志
XML和XSLT结合使网站设计浑然一体
如何使用XML实现多渠道接入网站的构架
基于关系型数据库引擎的\"XML\"索引技术
XML数据查询技术已经成为现今的研究热点
XML轻松学习手册(3)XML的术语
学习使用XML引擎XQEngine
XML简易教程之一
XML简易教程之二
XML简易教程之三

XML 中的 从xml中获取城市,省份名称


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 32 ::
收藏到网摘: n/a

最近没事,写了个在项目经常要取城市或省份名的方法,所以改成了一个类.方便以后调用


//********************************************************************************
//*                                                                              *
//    功能描述:从xml中获取数据
//    版本编号:owendu V1.1
//    初始创建: 2006.08.27
//    最后修改: 2006.10.08
//*                                                                              *
//********************************************************************************


//根据cityid,获取返回cityname   ---------------xmlurl 指的是整个站点的路征
//页面调用方式如下:<script language=javascript>GetCityName("<%=cityid%>","<%=System.Configuration.ConfigurationSettings.AppSettings["LocalSiteURL"]%>")</script>
function GetCityName(cityid,xmlurl)
{
    
     var XmlDoc_city = new ActiveXObject("MSXML2.DOMDocument.3.0");
       XmlDoc_city.async=false;
       XmlDoc_city.validateOnParse=false;
       var Url=xmlurl+"XmlData/city.xml";
       XmlDoc_city.load(Url);
   
  //
    if (XmlDoc_city.readyState == 4 && XmlDoc_city.xml != "")
  {
 
   var city;
   var cities = XmlDoc_city.documentElement.selectNodes("city");
  
   for (var i=0; i < cities.length; i++)
   {
    city = cities[i];
    if (city.getAttribute("cityid") == cityid)
    {
   
     document.write(city.getAttribute("cityname"));
     break;
    }
     //obj2.options[obj2.length] = new Option(city.getAttribute("cityname"),city.getAttribute("cityid"));
   }
     }
    // else
    // {
        //alert('您的浏览器不支持xml文件读取,于是本页面禁止您的操作,推荐使用IE5.0以上可以解决此问题!');
    // }
}

//根据省份id,获取返回省名   ---------------xmlurl 指的是整个站点的路征
function GetProviceName(pid,xmlurl)
{
    
    var XmlDoc_city = new ActiveXObject("MSXML2.DOMDocument.3.0");
    XmlDoc_city.async=false;
    XmlDoc_city.validateOnParse=false;
    var Url=xmlurl+"XmlData/province.xml";
    XmlDoc_city.load(Url);   
    if(XmlDoc_city.readyState == 4 && XmlDoc_city.xml != "")
 {
  var city;
  var cities = XmlDoc_city.documentElement.selectNodes("province");
 
  for (var i=0; i < cities.length; i++)
  {
   city = cities[i];
   if (city.getAttribute("provinceid") == pid)
   {  
    document.write(city.getAttribute("provincename"));
    break;
   }    
  }
 }
}

//根据地区districtid,获取返回地区名   ---------------xmlurl 指的是整个站点的路征
function GetProviceName(districtid,xmlurl)
{
    
    var XmlDoc_city = new ActiveXObject("MSXML2.DOMDocument.3.0");
    XmlDoc_city.async=false;
    XmlDoc_city.validateOnParse=false;
    var Url=xmlurl+"XmlData/district.xml";
    XmlDoc_city.load(Url);   
    if(XmlDoc_city.readyState == 4 && XmlDoc_city.xml != "")
 {
  var city;
  var cities = XmlDoc_city.documentElement.selectNodes("district");
 
  for (var i=0; i < cities.length; i++)
  {
   city = cities[i];
   if (city.getAttribute("districtid") == pid)
   {  
    document.write(city.getAttribute("districtname"));
    break;
   }    
  }
 }
}

//根据省份id,城市id,地区(县)id,获取返回省城市名地区名   ---------------xmlurl 指的是整个站点的路征
function GetName(pid,cityid,districtid ,xmlurl)
{
   var cityname="";
   var provicename="";
   var districtname="";
    //
   
    var XmlDoc_p = new ActiveXObject("MSXML2.DOMDocument.3.0");
    XmlDoc_p.async=false;
    XmlDoc_p.validateOnParse=false;
    var UrlProvice=xmlurl+"XmlData/province.xml";
    XmlDoc_p.load(UrlProvice);   
    //
    
    var XmlDoc_city = new ActiveXObject("MSXML2.DOMDocument.3.0");
    XmlDoc_city.async=false;
    XmlDoc_city.validateOnParse=false;
    var Urlcity=xmlurl+"XmlData/city.xml";
    XmlDoc_city.load(Urlcity);  
   
    //
    var XmlDoc_district = new ActiveXObject("MSXML2.DOMDocument.3.0");
    XmlDoc_district.async=false;
    XmlDoc_district.validateOnParse=false;
    var Urldis=xmlurl+"XmlData/district.xml";
    XmlDoc_district.load(Urldis);  
    //
    if(XmlDoc_p.readyState == 4 && XmlDoc_p.xml != "")
 {
  var provice;
  var provices = XmlDoc_city.documentElement.selectNodes("province");
 
  for (var i=0; i < provices.length; i++)
  {
   provice = provices[i];
   if (provice.getAttribute("provinceid") == pid)
   {  
      provicename=provice.getAttribute("provincename");
    break;
   }    
  }
 }
 
  if(XmlDoc_city.readyState == 4 && XmlDoc_city.xml != "")
 {
  var city;
  var citys = XmlDoc_city.documentElement.selectNodes("city");
 
  for (var i=0; i < citys.length; i++)
  {
   city = citys[i];
   if (city.getAttribute("cityid") == cityid)
   {  
      cityname=city.getAttribute("cityname");
    break;
   }    
  }
 }
 
  if(XmlDoc_district.readyState == 4 && XmlDoc_district.xml != "")
 {
  var district;
  var districts = XmlDoc_district.documentElement.selectNodes("district");
 
  for (var i=0; i < districts.length; i++)
  {
   district = districts[i];
   if (district.getAttribute("districtid") == districtid)
   {  
      districtname=district.getAttribute("districtname");
    break;
   }    
  }
 }
 var name=provicename+" "+cityname+" "+ districtname;
 document.write(name);
 
}

http://www.cnblogs.com/owendu/archive/2006/10/16/530580.html