Tenho estado bem recentemente e escrevi um método que geralmente exige o nome de uma cidade ou província em projetos, então mudei para uma classe. Conveniente para ligar mais tarde
//************************************************ *********************************
//* *
// Descrição da função: Obtém dados do xml
// Número da versão: owendu V1.1
//Criação inicial: 27/08/2006
// Última modificação: 2006.10.08
//* *
//************************************************ *********************************
//De acordo com cityid, obtenha e retorne cityname ---------------xmlurl refere-se ao roteiro de todo o site
//O método de chamada da página é o seguinte:
função GetCityName(cityid,xmlurl)
{
var XmlDoc_city = novo ActiveXObject("MSXML2.DOMDocument.3.0");
XmlDoc_city.async=false;
XmlDoc_city.validateOnParse=false;
var Url=xmlurl+"XmlData/cidade.xml";
XmlDoc_city.load(Url);
//
if (XmlDoc_city.readyState == 4 && XmlDoc_city.xml!= "")
{
var cidade;
var cidades = XmlDoc_city.documentElement.selectNodes("cidade");
for (var i=0; i < cidades.comprimento; i++)
{
cidade = cidades[i];
if (city.getAttribute("cityid") == cidadeid)
{
document.write(city.getAttribute("nomedacidade"));
quebrar;
}
//obj2.options[obj2.length] = new Option(city.getAttribute("nomedacidade"),city.getAttribute("cityid"));
}
}
//outro
// {
//alert('Seu navegador não suporta leitura de arquivos xml, portanto sua operação está proibida nesta página. Recomenda-se usar IE5.0 ou superior para resolver este problema!');
// }
}
//De acordo com o ID da província, obtenha o nome da província retornado ---------------xmlurl refere-se ao roteiro de todo o site
função GetProviceName(pid,xmlurl)
{
var XmlDoc_city = novo 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 cidade;
var cidades = XmlDoc_city.documentElement.selectNodes("província");
for (var i=0; i < cidades.comprimento; i++)
{
cidade = cidades[i];
if (city.getAttribute("provinceid") == pid)
{
document.write(city.getAttribute("nomedaprovíncia"));
quebrar;
}
}
}
}
//De acordo com o distrito, obtenha o nome do distrito retornado ---------------xmlurl refere-se ao roteiro de todo o site
função GetProviceName(distrito,xmlurl)
{
var XmlDoc_city = novo 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 cidade;
var cidades = XmlDoc_city.documentElement.selectNodes("distrito");
for (var i=0; i < cidades.comprimento; i++)
{
cidade = cidades[i];
if (city.getAttribute("districtid") == pid)
{
document.write(city.getAttribute("nomedodistrito"));
quebrar;
}
}
}
}
//De acordo com o ID da província, ID da cidade, ID da região (condado), obtenha a província, o nome da cidade e o nome da região retornados ------------------xmlurl refere-se ao roteiro de todo o site
função GetName(pid,cityid,distrito,xmlurl)
{
var nomecidade="";
var nomedaprovisão="";
var nomedodistrito="";
//
var XmlDoc_p = novo 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 = novo ActiveXObject("MSXML2.DOMDocument.3.0");
XmlDoc_city.async=false;
XmlDoc_city.validateOnParse=false;
var Urlcity=xmlurl+"XmlData/cidade.xml";
XmlDoc_city.load(Urlcidade);
//
var XmlDoc_district = novo 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 != "")
{
provisão var;
var províncias = XmlDoc_city.documentElement.selectNodes("província");
for (var i=0; i < provisões.comprimento; i++)
{
província = provisões[i];
if (provice.getAttribute("provinceid") == pid)
{
provisionname=provice.getAttribute("provincename");
quebrar;
}
}
}
if(XmlDoc_city.readyState == 4 && XmlDoc_city.xml != "")
{
var cidade;
var cidades = XmlDoc_city.documentElement.selectNodes("cidade");
for (var i=0; i < cidades.comprimento; i++)
{
cidade = cidades[i];
if (city.getAttribute("cityid") == cidadeid)
{
nomedacidade=cidade.getAttribute("nomedacidade");
quebrar;
}
}
}
if(XmlDoc_district.readyState == 4 && XmlDoc_district.xml != "")
{
distrito var;
var distritos = XmlDoc_district.documentElement.selectNodes("distrito");
for (var i=0; i < distritos.length; i++)
{
distrito = distritos[i];
if (district.getAttribute("districtid") == distritoid)
{
nomedodistrito=distrito.getAttribute("nomedodistrito");
quebrar;
}
}
}
var nome=nomedaprovíncia+" "+nomedacidade+" "+nomedodistrito;
documento.write(nome);
}
http://www.cnblogs.com/owendu/archive/2006/10/16/530580.html