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

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

//********************************************************************************
//*                                                                              *
//    功能描述:从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);
  
}

以上就是从xml中获取城市,省份名称的内容,更多相关内容请关注硕下网()!